23.03.2004, 12:41 | #1 |
Участник
|
Номер накладной поставщика в purchFormLetter.update
В аксапте 3.0 При регистрации накладных purchFormLetter.update( _purchTable,
_num, _transDate, PurchUpdate::All) не могу ввести номер накладной поставщика(_num). Кто нибудь программно создавал накладные? Как можно ввести номер накладной поставщика? |
|
23.03.2004, 15:19 | #2 |
Участник
|
Что никто программно не учитывал приходные накладные?
|
|
23.03.2004, 16:17 | #3 |
----------------
|
Учитывали.. в 2.5
purchFormLetter.update() не вызывали Может быть просто вопрос неправильно задан? ---------------- Идея в том, чтобы перед вызовом purchFormLetter.run() у Вас ужели были сформированы записи в таблицах PurchParmTable и PurchParmLine (наверно, в 3.0 еще и PurchParmUpdate). Все параметры для создаваемого документа передаются, обычно, через них... посмотрите как работает стандартная функциональность. |
|
23.03.2004, 16:46 | #4 |
----------------
|
Продолжим
Немного посмотрел код... так вот, параметр _num дальше нигде не используется, т.е. туда можно запихнуть что угодно.
А вот пример использования из какого-то места Ax PHP код:
|
|
23.03.2004, 17:00 | #5 |
Участник
|
Видел я этот код , но он не работает. Если посмотреть сам Update
void update(Common source, Num _number, TransDate _transDate = this.transDate(), PurchUpdate _specQty = PurchUpdate::All, AccountOrder _accountOrder = AccountOrder::None, NoYes _proforma = purchParmUpdate.proforma, NoYes _printFormLetter = printFormLetter) {; switch(source.tableId) { case tablenum(PurchTable) : this.purchTable(source); this.initParmPurchTable(purchTable); break; } if (!_transDate) _transDate = systemDateGet(); this.transDate (_transDate); this.specQty (_specQty); this.proforma (_proforma); this.printFormLetter (_printFormLetter); this.printPromissoryNote(NoYes::No); this.createParmUpdate(); this.initParameters(purchParmUpdate, PrintOut::Current); // Printout this.initLinesQuery(); this.progressHide(); this.run(); } видно , что _number здесь и не используется, соответственно и номер накладной не создается. |
|
23.03.2004, 17:14 | #6 |
----------------
|
Тогда я не понимаю вопроса...
Вопрос в том как в таблице PurchParmTable заполнить поле Num??? |
|
23.03.2004, 17:26 | #7 |
Участник
|
Да заполнить это поле до того как будут разнесена накладная.
|
|
24.03.2004, 09:32 | #8 |
----------------
|
Цитата:
Да заполнить это поле до того как будут разнесена накладная
1. Создать свой класс - наследник от PurchFormLetter_invoice 2. Перекрыть метод createParmTable (обратите внимание, что в нем Num инициализируется для InterCompany), чтобы заполнять Num по своим критериям 3. Создать какой-дь метод для передачи параметров или перекрыть update. 4. Создать какой-дь метод для вызова всего этого, напрпимер main |
|
24.03.2004, 10:03 | #9 |
Участник
|
Ок.Я в принципе так и делаю. Просто мне не совсем понятно что же за num такой в этом update который негде не используется?А вообще спасибо за подсказку.
|
|