AXForum  
Вернуться   AXForum > Microsoft Dynamics AX > DAX: Функционал
All
Забыли пароль?
Зарегистрироваться Правила Справка Пользователи Сообщения за день Поиск Все разделы прочитаны

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 22.06.2011, 14:37   #1  
Favor82 is offline
Favor82
Участник
 
120 / 11 (1) +
Регистрация: 30.10.2009
Адрес: Tallinn
Накладная, ожидающая обработки
Доброго времени суток

В DAX 2009 не получается разнести заказ на закупку. Ругается, что есть накладная, ожидающая обработки. В запросах она тоже есть. Проблема в том, что не понятно, как цикл закупки провести до конца, потому что система кредитовать или удалить этот заказ не даёт.

Заранее спасибо!!!
Старый 22.06.2011, 14:41   #2  
EVGL is offline
EVGL
Banned
Соотечественники
Лучший по профессии 2017
Лучший по профессии 2015
Лучший по профессии 2014
 
4,445 / 3001 (0) ++++++++++
Регистрация: 09.07.2002
Адрес: Parndorf, AT
В левом верхем углу среди "places" есть форма, которая показывает неразнесенные накладные и позволяет их удалить.
За это сообщение автора поблагодарили: AlGol (2), Axal (1).
Старый 22.06.2011, 15:01   #3  
someOne is offline
someOne
Участник
Аватар для someOne
 
174 / 432 (15) +++++++
Регистрация: 11.12.2008
Адрес: Москва
Цитата:
Сообщение от Favor82 Посмотреть сообщение
Доброго времени суток

В DAX 2009 не получается разнести заказ на закупку. Ругается, что есть накладная, ожидающая обработки. В запросах она тоже есть. Проблема в том, что не понятно, как цикл закупки провести до конца, потому что система кредитовать или удалить этот заказ не даёт.

Заранее спасибо!!!
Это новая возможность Ax2009. Точно не понял ее предназначение, что то типа возможности сохранять накладные перед разноской.
Может кто пояснит зачем это вообще нужно ?

Иногда (может быть в результате сбоя при разноске накладной по закупке) там "зависают" накладные. Как эту функцию отключить - не понял.

Чтобы накладные не "зависали", вставил перед разноской накладной по закупке такое:

X++:
    delete_from VendInvoiceInfoTable
    where VendInvoiceInfoTable.PurchId == _purchId;
Это, конечно, радикально. Но лучшего решения не нашел.
Проблема с зависанием накладных таким образом была решена.
Старый 22.06.2011, 15:24   #4  
greench is offline
greench
Участник
Oracle
 
425 / 74 (3) ++++
Регистрация: 12.07.2007
Адрес: Киев
Цитата:
Сообщение от someOne Посмотреть сообщение

X++:
    delete_from VendInvoiceInfoTable
    where VendInvoiceInfoTable.PurchId == _purchId;
Круто, а если по закупке несколько накладных и вы пытаетесь сформировать не первую по счету?
Старый 22.06.2011, 15:42   #5  
someOne is offline
someOne
Участник
Аватар для someOne
 
174 / 432 (15) +++++++
Регистрация: 11.12.2008
Адрес: Москва
Цитата:
Сообщение от greench Посмотреть сообщение
Круто, а если по закупке несколько накладных и вы пытаетесь сформировать не первую по счету?
Вы наверное подумали про таблицу VendInvoiceJour ? Ее никто не трогает...
Удаление происходит из таблицы VendInvoiceInfoTable (Сохраненные накладные поставщика) - это таблица хранит накладные требующие обработки.

Если вы не используете эту функциональность, а разносите накладные сразу, не сохраняя их (напрямую или через пакетную обработку) то это ни на что не влияет.

Последний раз редактировалось someOne; 22.06.2011 в 15:49.
Старый 22.06.2011, 15:57   #6  
glibs is offline
glibs
Member
Сотрудники компании It Box
Most Valuable Professional
Лучший по профессии 2011
Лучший по профессии 2009
 
4,942 / 911 (40) +++++++
Регистрация: 10.06.2002
Адрес: I am from Kyiv, Ukraine. Now I am in Moscow. For private contacts: glibs@hotmail.com
Цитата:
Сообщение от someOne
...Точно не понял ее предназначение...
При разноске накладной по закупке вы можете ввести много данных. Например, в форме разноски можно отобрать только часть строк из всей закупки, скорректировать количество и/или цены, вручную скорректировать налоги, в буржуйской версии вводятся данные по грузоместам — в русской по должностным лицам, ну и прочие мелочи (полистайте закладки).

А еще можно сделать групповую обработку (надергать в одну накладную строки из нескольких заказов на покупку).

Если при разноске в ранних версиях возникала ошибка (забыли указать номер накладной поставщика или с настройкой разноски что не так) — все пропадало и можно было начинать все вводить сначала.

В 5.0 при повторном запуске обработки накладной в списке обрабатываемых документов восстанавливается не разнесшаяся из-за ошибки накладная со всеми введенными данными.

Что касается отложенной обработки, то в каком-то виде она и ранее существовала. Можно было сделать пакетную обработку накладной, причем можно было либо сразу отобрать строки к обработке, либо подбирать их по условиям, которые задавались в виде query и применялись в момент выполнения пакетного задания.
__________________
С уважением,
glibs®
За это сообщение автора поблагодарили: Logger (3), someOne (3).
Старый 19.12.2011, 12:39   #7  
wolfstein is offline
wolfstein
Axapta Retail User
Axapta Retail User
 
51 / 91 (4) ++++
Регистрация: 05.07.2006
Цитата:
Сообщение от someOne Посмотреть сообщение
Иногда (может быть в результате сбоя при разноске накладной по закупке) там "зависают" накладные. Как эту функцию отключить - не понял.
Чтобы накладные не "зависали", вставил перед разноской накладной по закупке такое:
X++:
    delete_from VendInvoiceInfoTable
    where VendInvoiceInfoTable.PurchId == _purchId;
Это, конечно, радикально. Но лучшего решения не нашел.
Проблема с зависанием накладных таким образом была решена.
Я сделал след. образом. В методе PurchFormLetter_Invoice.endUpdate(), есть место где удаляются PurchParm для накладных, у которых произошли ошибки в процессе разноски (purchParmTable.ParmJobStatus == ParmJobStatus::ContainErrors). Добавил туда же удаление семейства соответствующих VendInvoiceInfo*.
X++:
...
        // Delete the PurchParm data for any invoices that were on hold or that failed to post
        // These invoices were saved as pending invoices and should not remain in PurchParmTable

        //+ kav OK001940 19.12.2011 OK
        /*delete_from purchParmTable
            where purchParmTable.ParmId         == purchParmUpdate.ParmId
               &&(purchParmTable.Hold          == NoYes::Yes
               || purchParmTable.ParmJobStatus  == ParmJobStatus::ContainErrors);*/

        while select forupdate purchParmTable
            where purchParmTable.ParmId         == purchParmUpdate.ParmId
               &&(purchParmTable.Hold          == NoYes::Yes
               || purchParmTable.ParmJobStatus  == ParmJobStatus::ContainErrors)
        {
            VendInvoiceInfoTable::deleteTableRefId(purchParmTable.TableRefId);
            purchParmTable.delete();
        }
        //- kav OK001940 19.12.2011 OK
...
За это сообщение автора поблагодарили: Logger (3), Bega (5), S.Kuskov (5), someOne (3), Axal (1).
 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Российская накладная (ТОРГ-12) в модуле Проекты d&m DAX: Функционал 3 04.05.2010 12:27
сопоставление оплат клиента, переносов сальдо-поле накладная в общем журнале? Aquarius DAX: Функционал 3 28.01.2009 12:51
Закупка - отборочная накладная, изменить порядок обработки строк Zeppelin DAX: Программирование 4 29.10.2007 15:29
Отборочная накладная. Shakh DAX: Функционал 26 06.07.2004 10:15
Русская локализация Axapta 3 ? SlavaK DAX: Администрирование 59 01.07.2003 22:38
Опции темы Поиск в этой теме
Поиск в этой теме:

Расширенный поиск
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.
Быстрый переход

Рейтинг@Mail.ru
Часовой пояс GMT +3, время: 09:59.