13.02.2011, 00:53 | #1 |
:o)
|
changeCompany и ledgerJournalTable.initFromLedgerJournal()
доброго! [Ax 3.0]
Подскажите, пожалуйста, такую вещь: Делю changeCompany, внутри блока хочу проинициализировать новый курсор ledgerJournalTable внешним курсором. В новом курсоре компания принимает значение старого курсора (надо изменить только компанию). В инициализации передача значений осуществляется через .data() Если делаю инициализацию "вручную", то компания проставляется правильно. Прилагаю проект. Подскажите, как сделать красиво)
__________________
"Только на Бога не может быть обиды - если смерть пошлет, значит, жизни пришел предел, на то рождался,- а за все остальное на Земле есть и должен быть спрос!." Чингиз Торекулович Айтматов. |
|
13.02.2011, 11:50 | #2 |
Участник
|
Вместо data использовать buf2buf, это красиво или нет?
|
|
13.02.2011, 12:00 | #3 |
SAP
|
Цитата:
Вместо data использовать buf2buf, это красиво или нет?
|
|
13.02.2011, 12:28 | #4 |
Участник
|
Очень странно.
В 3-ке как раз при вызове data() в полученном буфере dataareaId равнялось текущей компании. А в 2009-й наоборот - сохранялось,т.е. принимало значение как в исходном буфере. У вас точно ax3.0 ? Может 2009-я ? |
|
14.02.2011, 12:04 | #5 |
:o)
|
__________________
"Только на Бога не может быть обиды - если смерть пошлет, значит, жизни пришел предел, на то рождался,- а за все остальное на Земле есть и должен быть спрос!." Чингиз Торекулович Айтматов. |
|
14.02.2011, 12:12 | #6 |
:o)
|
Цитата:
при вызове стандартного initFromLedgerJournalTable смотрим код: X++: void initFromLedgerJournalTable(LedgerJournalTable _ledgerJournalTable) { LedgerJournal ledgerJournalNew; LedgerJournalId journalNum; ; ledgerJournalNew = new LedgerJournal(); journalNum = ledgerJournalNew.newJournalNum(false); if (!journalNum) { throw error("Номер журнала не был создан!"); } this.data(_ledgerJournalTable); //!!!! this.JournalNum = journalNum; this.Posted = false; this.PostedDate = 31\01\2010; this.InUseBy = ''; this.UserBlockId = ''; this.SessionId = 0; this.SessionLoginDate = dateNull(); this.SessionLoginTime = 0; } при использовании buf2buf всё срослось
__________________
"Только на Бога не может быть обиды - если смерть пошлет, значит, жизни пришел предел, на то рождался,- а за все остальное на Земле есть и должен быть спрос!." Чингиз Торекулович Айтматов. Последний раз редактировалось jeky; 14.02.2011 в 12:16. |
|
14.02.2011, 14:20 | #7 |
Участник
|
Я имел в виду вызовы такого типа
buffer1 = buffer2.data(); Так что противоречия нет. У вас просто другой случай. |
|
14.02.2011, 16:39 | #8 |
:o)
|
спасибо, понятно
__________________
"Только на Бога не может быть обиды - если смерть пошлет, значит, жизни пришел предел, на то рождался,- а за все остальное на Земле есть и должен быть спрос!." Чингиз Торекулович Айтматов. |
|