|
27.10.2018, 10:43 | #1 |
Участник
|
PurchTotals "переопределить" можно, другое дело, что это нужно делать "иногда". Подобные места все чаще приходится лечить с помощью Option 3. Disposable context, в данном случае: где-то вышле по стеку создать singleton-"флажок", а где-то ниже, скажем, в постобработчике создания PurchTotals, по флажку подпихивать класс-пустышку вместо реального класса расчета итогов. Но выглядит это все очень извратно на фоне нормальных ветвлений в коде, которые можно было делать прежде.
|
|
27.10.2018, 10:52 | #2 |
Участник
|
Там вообще все плохо с purchline, есть в ГЛ параметрах галка, обрабатывать сабледжер параллельно и из-за нее purchline на апдейте tax сама себя лочит...
|
|
|
За это сообщение автора поблагодарили: Logger (1). |
20.11.2018, 15:34 | #3 |
Участник
|
AX 2012 R3. В методе SysDictIndex.showDuplicates() неверно формируется список ORDER BY. Иначе говоря, если подсунуть индекс InventDim.DimIdx, у которого отключены некоторые поля, то неверно составленный запрос вызовет ошибку.
Вместо X++: stmtStr += int2str(enabledFields[i]+1); X++: stmtStr += int2str(i+1);
__________________
// no comments |
|
|
За это сообщение автора поблагодарили: ax_mct (3). |
21.11.2018, 09:44 | #4 |
Участник
|
Ну и такая же байда с ResultSet, если количество фактических полей не совпадает с описанным, выбирается getString(12) при том, что в SELECT-е участвовало всего 10 полей.
__________________
// no comments |
|
20.12.2018, 22:07 | #5 |
Microsoft Dynamics
|
D365 FO
public class InventItemInventoryDimensionStorageDimConversionTaskInitiatorDelegateHandlers { } В одном имени два раза использованы слова Inventory и Dimension... При Балмере такого не было... Кто-нибудь натыкался на доку, по каким критериям оценивать таблицы с InventDimId, нужен им конвертер или нет? |
|
|
За это сообщение автора поблагодарили: gl00mie (2). |
14.01.2019, 10:55 | #6 |
Участник
|
Есть все таки в Ax какие то традиции переходящие имхо из поколение в поколения.
RunBase X++: public QueryRun queryRun() { return null; #if.never return QR; #endif } |
|
14.01.2019, 15:09 | #7 |
Administrator
|
Хорошие традиции. Несут в себе документацию, что в этом методе надо возвращать переменную QR, определенную в ClassDeclaration наследника RunBase.
Т.е. это документирование того, как надо использовать фреймворк.
__________________
Возможно сделать все. Вопрос времени |
|
14.01.2019, 16:36 | #8 |
Участник
|
|
|
10.02.2019, 11:02 | #9 |
Участник
|
|
|
|
За это сообщение автора поблагодарили: mazzy (5), trud (3), db (5). |
10.02.2019, 11:59 | #10 |
Участник
|
Этот код вывел 16?
Арифметика неверно считает? |
|
10.02.2019, 12:43 | #11 |
Участник
|
почему сразу "неверно"?
очевидно, что сейчас так записывается битовый сдвиг осьмерки влево на единицу. |
|
10.02.2019, 13:48 | #12 |
Участник
|
|
|
10.02.2019, 14:26 | #13 |
Роман Долгополов (RDOL)
|
|
|
|
За это сообщение автора поблагодарили: trud (1), Stitch_MS (1). |
10.02.2019, 14:16 | #14 |
Роман Долгополов (RDOL)
|
арифметика не при чем. проблема в реализации case с множественными значениями. если в в такой ветке нет break, то код ветки выполняется столько раз, сколько значений в списке
вот так работает нормально X++: public static void main(Args _args) { int i = 1; int j = 0; switch (i) { case 1: case 2,3,4: Info("!!"); j+=8; break; } Info(int2Str(j)); } а вот так вообще 32: X++: public static void main(Args _args) { int i = 1; int j = 0; switch (i) { case 1, 2,3,4: Info("!!"); j+=8; } Info(int2Str(j)); } |
|
|
За это сообщение автора поблагодарили: Logger (5). |
14.02.2019, 10:34 | #15 |
Участник
|
DAX 2012 R3
При переименовании кода складского журнала через паспорт записи не меняется код журнала в InventTransOriginJournalTrans.InventJournalId и в InventTransOrigin.ReferenceId. В результате, разнести нормально такой журнал не получается. Плюс - удаление такого журнала оставляет складские проводки Заказано в базе, хотя строки журнала удаляются.
__________________
Ален ноби, ностра алис. Что означает - если один человек построил, другой завсегда разобрать может. |
|
14.02.2019, 10:52 | #16 |
Участник
|
Ну т.е. по факту WTF в данном случае, что эту функцию смены кода оставили. Реально ей пользоваться можно практически никогда.
__________________
Ivanhoe as is.. |
|
14.02.2019, 17:23 | #17 |
Участник
|
Цитата:
Но похоже, если взят курс на замену натуральных ключей суррогатными, то её время подходит к концу.
__________________
Ален ноби, ностра алис. Что означает - если один человек построил, другой завсегда разобрать может. |
|
27.02.2019, 17:27 | #18 |
Модератор
|
Давным-давно, один мальчик установил KB4492562, и все инвойсы стали показывать 4.67. Никто так и не смог разобраться, правильно это было или нет
__________________
-ТСЯ или -ТЬСЯ ? |
|
|
За это сообщение автора поблагодарили: twilight (1). |
12.03.2019, 15:50 | #19 |
Moderator
|
Версия 8.1.3, метод SSRSReportRunController.CheckBatchJobStatus() содержит следующий замечательный код:
X++: UserConnection userConnection; try { userConnection = new UserConnection(); userConnection.ttsbegin(); // Update teh batch job status to 'Waiting' select pessimisticLock firstonly * from batchJobUpdate where batchJob.RecId == batchJobUpdate.RecId; if (batchJobUpdate) { batchJobUpdate.Status = BatchStatus::Waiting; batchJobUpdate.update(); } userConnection.ttscommit(); } finally { userConnection.finalize(); } Лечится это достаточно простым путем: Надо найти в вашей системе батч с именем "Report Data Cleanup" и просто его удалить. При следущей печати отчета, система прокашляется и создаст нужный батч. |
|
|
За это сообщение автора поблагодарили: Vadik (1), trud (5), gl00mie (5). |
12.03.2019, 18:55 | #20 |
Banned
|
Цитата:
Или там насквозь хитрый batchJobUpdate.update() который сам себе write() ? если писать batchJobUpdate.setConnection(userConnection)) то это скроет ошибку за счет нового соединения. Так? |
|