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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 06.12.2001, 22:31   #1  
Anton Sk. is offline
Anton Sk.
Участник
 
35 / 11 (1) +
Регистрация: 14.11.2002
Проект. "Редактирование платежного поручения"
Для удобства работы бухгалтера возникла необходимость просмотра и редактирования платежного поручения перед его генерацией. Данная задача была решена. Добавлена новая функциональность в стандартную форму Axapta, которую можно вызвать следующим способом: Расчеты с поставщиками -> Журнал платежей -> Строки. Здесь в меню Функции добавлены два меню: Предварительный просмотр и Редактировать платежного поручения.



Названия меню говорят сами за себя. Теперь об изменениях в коде и принципе отката. Кнопка предварительный просмотр фактически генерит платежку (вызывается метод clicked кнопки Генерация ПП), отчет выводится на экран, после закрытия отчета происходит откат ПП.

Откат сгенерированного платежного поручения (ПП):

1. Изменение статуса для соответсвующего ПП с Послано на Нет в таблице LedgerJournalTrans;

2. Удаление записи из таблицы BankPaymentOrderLog_Ru, соответствующей отчету по ПП;

3. Удаление значений двух полей (PaymentReference и BankChequeNum) из таблицы LedgerJournalTrans.

Примечание: подробно об откате можно прочитать на форуме "Исследования".
Исследование отката платежного поручения

При нажатии на кнопку Редактировать происходит откат уже сгенерированного ПП.

Метод для меню Предварительный просмотр.
X++:
void clicked()
{
    LedgerJournalTrans LJT;              
    BankPaymentOrderJour_Ru BPOLRT;       

    JournalNum JournalNumTMP;
    Voucher VoucherTMP;

    LedgerJournalTrans  cur;          

    LJT = LedgerJournalTrans_ds.cursor();
    JournalNumTMP = LJT.JournalNum;
    VoucherTMP = LJT.Voucher;

//Запоминаем курсор нашего ПП
    cur = LedgerJournalTrans::find(JournalNumTMP, VoucherTMP, true); 

//---------------------Генерация платежки------------
//____________________________________

    CreatePayment.clicked();
//____________________________________

//Смещаемся на запись нашего ПП
    LedgerJournaltrans_ds.findRecord(cur);     

//----------------------ОТКАТ---------------------------------
//Изменяем статус ПП
    VendPaymentReconciliationNone.clicked(); 

//Удаляем строчку из таблицы отчета
    BPOLRT = BankPaymentOrderJour_Ru::find(JournalNumTMP, VoucherTMP);
    BPOLRT.doDelete();

//Удаляем значения полей 
    LJT.BankChequeNum = "";
    LJT.PaymentReference = "";
    LJT.NoEdit = NoYes::No;
    LJT.Update();

   super();

}
Здесь описана версия проекта "Редактирование платежного поручения", который рабортает в версии Axapta №2.5, во 2.0 Service Pack.

В этой версии:
- Отчет называется CustVendOutPayment_RU;
- Таблица отчета называется BankPaymentOrderJour_RU.

Добавилась возможность заносить в таблицу CustPaymentModeSpec варианты Вида платежа или Способа отправки, что одно и то же. Например, Электронно, Почтой и т.д. Это выполняется через новую форму, которую можно вызвать из меню (см. иллюстрацию).



Вариант Вида платежа (Способа отправки) платежного поручения выбирается из сomboвox (см. иллюстрацию):




Как пользоваться:

Как создать платежное поручение? Меню – Расчеты с поставщиками, журнал платежей, строки. На форме на закладке обзор находится таблица со строками. По каждой строке формируется платежное поручение, которое можно сделать, нажав на функции, генерация платежей. Генерация платежей создаст ПП, у которого изменится статус (поле статус) на Послано. Такое ПП уже нельзя изменить ни в каком поле. Для этого существует кнопка в функциях редактировать ПП. Для того чтобы можно было изменить какое-нибудь поле ПП, надо нажать Редактировать ПП. Кроме того, перед тем как создать ПП, существует возможность его предварительного просмотра. Для этого надо нажать кнопку Предварительный просмотр ПП. В этом случае можно вывести на печать ПП, а затем если, что-то не так в нем, поправить нужные поля и теперь уже нажать на генерацию ПП.



Описание кнопок, используемых для генерации, предварительного просмотра ПП и редактирования:

(1) При нажатии на меню - Генерация платежей (см. иллюстрацию №3), происходит генерация всех платежей со статусом Нет.

(2) При нажатии на меню – Предварительный просмотр, выдается для просмотра только одно платежное поручение из всех строк со статусом Нет.

(3) При нажатии на меню – Редактировать платежное поручение, то платежное поручение, на котором был курсор, становится доступным для редактирования.



Пример использования: Возьмем общий случай, когда мы работаем с несколькими платежными поручениями. И так мы забили несколько ПП. Теперь перед печатью их надо просмотреть. Для того, чтобы просмотреть все ПП, можно нажать Генерация платежного поручения. Все платежки выйдут в форму отчета, где их можно просмотреть в очереди, листая их с помощью кнопок на панели окна отчета.

При этом все ПП будут сгенерированы. Если надо откатить одну из них, для этого надо установить курсор на нужной и нажать Редактировать. Внести изменения и снова сгенерировать. Повторяя эти действия можно изменить и снова сгенерировать несколько ПП.
Кроме того, для просмотра перед печатью, можно, нажав Просмотр ПП, просмотреть каждую из строк таблицы ПП по отдельности без генерации. Убедившись, что все ПП забиты правильно, нажать Генерация ПП. Все ПП будут сгенерированы.

Антон Скоробогатов
Вложения
Тип файла: xpo hb_m005.xpo (928.3 Кб, 725 просмотров)
Тип файла: img305-1 (481.5 Кб, 1128 просмотров)
Тип файла: img305-2 (12.8 Кб, 1147 просмотров)
Тип файла: img305-3 (12.0 Кб, 1130 просмотров)
Теги
платежное поручение, ax2.5

 

Похожие темы
Тема Автор Раздел Ответов Посл. сообщение
Поля недоступны для редактирования DreamCreator DAX: Программирование 5 27.10.2005 09:36
программно открыть для редактирования складские аналитики, как? NetBus DAX: Программирование 11 06.10.2005 14:24
где взять поля платежного поручения? puz DAX: Функционал 1 14.01.2005 15:08
Исследование отката платежного поручения Anton Sk. DAX: Функционал 1 24.12.2001 13:58
Проблема с настройками платежного поручения Anton Sk. DAX: Программирование 2 10.12.2001 19:26
Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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