|
![]() |
#1 |
Участник
|
Цитата:
никаких особо длинных операций не выполняется. вот полный код: X++: /// <summary> /// Tracks channel database assignment. /// </summary> public void trackChannelDBAssignment() { container channelDB; int i; RefRecId channelDBRecId; RefRecId channelRecId; RetailCDXDataStoreChannel dataStoreChannel; while select RefRecId from ref1 where ref1.NodeID == 0 && ref1.RefTableID == tableNum(RetailCDXDataStoreChannel) && ref1.SYS_CHANGE_OPERATION == 'I' { channelDB += ref1.RefRecID; } for (i = 1; i <= conLen(channelDB); ++i) { channelDBRecId = conPeek(channelDB, i); select Channel from dataStoreChannel where dataStoreChannel.RecId == channelDBRecId; channelRecId = dataStoreChannel.Channel; select firstOnly RecId from ref1 where ref1.NodeID == 0 && ref1.RefTableID == tableNum(RetailChannelTable) && ref1.SYS_CHANGE_OPERATION == 'I' && ref1.RefRecID == channelRecId; if (!ref1) { ref1.initValue(); ref1.NodeID = 0; ref1.RefTableID = tableNum(RetailChannelTable); ref1.RefRecID = channelRecId; ref1.SYS_CHANGE_OPERATION = 'I'; ref1.insert(); } } } но даже предположить не могу ЗАЧЕМ? |
|