09.05.2022, 20:34 | #1 |
Участник
|
Создать таблицу в D365FO из X++ без синхронизации
Пиполь, вот в старые недобрые времена можно было взять да и создать табличку прямо из кода:
treeNodeTable = treeNode.AOTadd(#tmpTablesTable); но теперь, в D365FO это нельзя (и правильно!), а как же можно? нужно временное хранилище (то есть необязательно прямо таблицу как таблицу, а вообще что-то похожее на неё) на пару-тройку столбцов. прямым SQL выстрелом? или как-то ещё? спасибо
__________________
Felix nihil admirari |
|
09.05.2022, 20:46 | #2 |
Administrator
|
Собственно 2 вопроса:
1. Почему нельзя воспользоваться обычным SQL-оператором CREATE TABLE? (как в "своей" БД, так и во временной) 2. Почему нельзя заранее создать в АОТе временную (TempDB) табличку и потом уже к ней обращаться, хоть из T-SQL? Т.е. вопрос глобальный один. Даже в старых версиях - зачем нужно было из кода создавать табличку именно в АОТе?
__________________
Возможно сделать все. Вопрос времени |
|
|
За это сообщение автора поблагодарили: wojzeh (1). |
09.05.2022, 21:41 | #3 |
Участник
|
Цитата:
Цитата:
(кстати, никак не могу понять, как эту фичу активировать. upd: нашёл: INSERT INTO SYSFLIGHTING (FLIGHTNAME, ENABLED, FLIGHTSERVICEID) VALUES ('AppConsistencyCustomScriptFlight', 1, 12719367)
__________________
Felix nihil admirari Последний раз редактировалось wojzeh; 09.05.2022 в 21:56. |
|
|
За это сообщение автора поблагодарили: sukhanchik (4). |
10.05.2022, 00:38 | #4 |
Administrator
|
Цитата:
Всё вышесказанное относится к постоянной таблице в базе AxDB. Если говорить про временные таблицы в TempDB, то тут вообще всё без проблем, потому что сами таблицы и так регулярно создаются системой (т.е. у AppPool-а априори есть права на создание таблиц в TempDB). Но работать с такой таблицей сможет только T-SQL. Если же есть возможность заранее создать структуру таблицы в AOT-е (как TempDB), то появится возможность управлять этой таблицей из X++ (помимо T-SQL), что может облегчить работу с данными в таблице.
__________________
Возможно сделать все. Вопрос времени |
|
10.05.2022, 01:39 | #5 |
Участник
|
Вот это https://docs.microsoft.com/en-us/dyn...defined-fields создает поля на лету без синхронизации. Посмотрите как работает.
|
|
|
За это сообщение автора поблагодарили: sukhanchik (2), trud (2), wojzeh (1). |
10.05.2022, 19:41 | #6 |
Участник
|
__________________
Felix nihil admirari |
|
10.05.2022, 19:53 | #7 |
Участник
|
Я на практике с 365й не работал, но, по идее - у АОСа есть практически полные права на базу аксапты? То есть можно из кода SQL-запросом создать там что угодно? Возможно, на временную таблицу, но постоянную, которую потом дропнуть?
|
|
10.05.2022, 21:10 | #8 |
Модератор
|
А как Вы собираетесь деплоить код для доступа к этим данным без остановки приложения ?
__________________
-ТСЯ или -ТЬСЯ ? |
|
11.05.2022, 02:02 | #9 |
Участник
|
Цитата:
Грузим код через готовый deployable package, а уж он там на месте сам всё создаёт - и таблицы, и форму, и логику для работы с этими таблицами
__________________
Felix nihil admirari |
|
11.05.2022, 06:58 | #10 |
Участник
|
Struct?
__________________
// no comments |
|