31.08.2019, 01:07 | #1 |
Участник
|
D365FO SysGlobalCache - expected type was int
Пытаюсь пронести значение переменных через event handler используя SysGlobalCache в D365FO v10 PU24.
Столкнулась с забавной ситуацией: могу добавить в кеш несколько переменных, но только одного типа. Тип определяется первой добавленоой переменной, например, если в начале сессии я добавила в кеш переменную целого типа, то другие переменные целого типа, включая перечисления, добавляются, а вот, например, при попытке добавить строковую переменную выпадает ошибка "The expected type was int, but the encountered type was str." Если первой добавить строку, то переменную целого типа добавить уже нельзя. X++: class SysGlobalCache365 { /// <summary> /// Runs the class with the specified arguments. /// </summary> /// <param name = "_args">The specified arguments.</param> public static void main(Args _args) { SysGlobalCache sgc = classFactory.globalCache(); sgc.set(curUserId(), "ValueInt", 10); sgc.set(curUserId(), "ValueInt2", 12); sgc.set(curUserId(), "ValueEnum", NoYes::Yes); sgc.set(curUserId(), "ValueStr","str"); //<--"The expected type was int, but the encountered type was str." } } X++: static void SysGlobalCache2012(Args _args) { SysGlobalCache sgc = classFactory.globalCache(); sgc.set(curUserId(), "ValueInt", 10); sgc.set(curUserId(), "ValueInt2", 12); sgc.set(curUserId(), "ValueEnum", NoYes::Yes); sgc.set(curUserId(), "ValueStr","str"); //<--"The expected type was int, but the encountered type was str." NO ERROR } Последний раз редактировалось alicedr; 31.08.2019 в 01:26. |
|
|
|