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

 
 
Опции темы Поиск в этой теме Опции просмотра
Старый 18.12.2007, 08:10   #1  
by_HT is offline
by_HT
Участник
 
195 / 10 (1) +
Регистрация: 12.10.2007
Цитата:
Сообщение от RedFox Посмотреть сообщение
Первая строчка для меня малеха не понятно. Так как таблица 270 "Bank Account" имеет первичный ключ "Account No" (а это рано "Account No" и "Bal. Account No"), то лучше использовать GET и это будет гораздо быстрее работать, чем фильтр в любой версии.
Код:
IF GenJnlLine."Bal. Account Type"=4 THEN BEGIN
Этим я хотел узнать правдо ли у нас Bal. Account Type имеет значение: Bank Account.
а этой строкой:
Код:
IF GenJnlLine."Bal. Account Type"= Acc::"Bank Account" THEN GenJnlLine."Bal. Account Type" :=4;
Я присваеваю значение...
Буду очень рад, если ты напишешь, как это сделать гораздо правельней!
Я так и не разобрался с Get.
Цитата:
Сообщение от RedFox Посмотреть сообщение
EXIT не очень удачная конструкция в данному случае. ЛУчше использовать ERROR - и транзакцию прерывает (а не просто выходит!!!! из CU) и информативное сообщение можно пользователю послать ;-)
ясно..спасиб!

Цитата:
Сообщение от RedFox Посмотреть сообщение
Тип поля - FlowField. Нужно вызывать CALCFIELD вроде как
Ого, я и не мог предположить... =(

Пока у меня выходит так:

Код:
IF GenJnlLine."Bal. Account Type"= Acc::"Bank Account" THEN GenJnlLine."Bal. Account Type" :=4;
 IF GenJnlLine."Bal. Account Type"=4 THEN BEGIN
  IF BankAccount.FIND('-') THEN
   REPEAT
	IF BankAccount."No." =  GenJnlLine."Bal. Account No." THEN
	 IF (BankAccount.CALCFIELDS(Balance) = TRUE) AND (BankAccount.Balance <> 0) THEN
	  IF BankAccount."Min. Balance" >= BankAccount.Balance - GenJnlLine.Amount THEN
	  ERROR(Text010);
   UNTIL BankAccount.NEXT =0;
END;
Старый 18.12.2007, 09:29   #2  
apanko is offline
apanko
MCTS
MCBMSS
Лучший по профессии 2009
 
1,164 / 139 (7) +++++
Регистрация: 24.02.2005
Цитата:
Сообщение от by_HT Посмотреть сообщение
Код:
IF GenJnlLine."Bal. Account Type"=4 THEN BEGIN
Этим я хотел узнать правдо ли у нас Bal. Account Type имеет значение: Bank Account.
а этой строкой:
Код:
IF GenJnlLine."Bal. Account Type"= Acc::"Bank Account" THEN GenJnlLine."Bal. Account Type" :=4;
Я присваеваю значение...
GenJnlLine."Bal. Account Type"=4 это ОС. Поля типа Option считаются с 0, а не с 1.
Смысл присваивания действительно не ясен. Чтобы убедиться в том, что счет правильного типа достаточно:
Код:
IF GenJnlLine."Bal. Account Type"=GenJnlLine."Bal. Account Type"::"Bank Account" THEN
Что касается GET
Код:
IF BankAccount.GET(GenJnlLine."Bal. Account No." ) THEN


PS
Документация Где найти документацию?
Книги книги по Navision
 

Опции темы Поиск в этой теме
Поиск в этой теме:

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

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

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

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