BEST logo логотип компании БЭСТ - программы для бизнеса ПРОДАЖИ
+7 (991) 312-04-37
trade@bestnet.ru
ПОДДЕРЖКА
+7 (495) 775-66-76
consult@bestnet.ru
СКАЧАТЬ
Обновления
Дистрибутивы
Авторизация

Логин:
Пароль:
Забыли свой пароль?
Регистрация
ВАШ ВОПРОС

Доступ к Личному кабинету закрыт!
Как получить доступ?


Главная  / Поддержка  / Форум  / Публичные форумы  / Программирование отчетов  / Подавить Акты сверки с нулевым сальдо.

Форум

Поиск  Пользователи  Правила 
Закрыть
Логин:
Пароль:
Забыли свой пароль?
Регистрация
Войти
 
Страницы: 1
RSS
Подавить Акты сверки с нулевым сальдо.
 
Планируем запустить около 2000 актов сверки по году.
Возможно ли запрограммировать не формировать / не выводить на печать Акты сверки партнеров у которых было нулевое сальдо на начало расчета и не было оборота за период?
 
Запрограммировать возможно примерно таким образом.
В событии OnBeforePrint секции отчета GH1 в самом начале надо написать следующее:
lVisible := False;
while (not reestr.EOF) and (lVisible = False) do begin
nRecno := Reestr.Recno;
cGrAnl := [DialogForm.reestr."GRANL"];
while (not reestr.EOF) and (cGrAnl = [DialogForm.reestr."GRANL"]) do begin
if ([DialogForm.reestr."SALDO_DT"] <> 0) or ([DialogForm.reestr."SALDO_KT"] <> 0) or
([DialogForm.reestr."SUMD_DT"] <> 0) or ([DialogForm.reestr."SUMD_KT"] <> 0) then begin
lVisible := True;
end;
reestr.Next;
end;
if lVisible = True then begin
while (not reestr.BOF) and (nRecno <> Reestr.Recno) do begin
reestr.Prior;
end;
end;
end;
 
Попробовали на Акте сверки с группировкой. Пропало название контрагента. все равно выходили пустые акты.
В чем причина?
 
В том шаблоне, который Вы прикрепили, в событии OnBeforePrint секции отчета GH1, НЕТ написанного выше программного кода. После добавления этого кода в шаблон на моей базе все пустые акты подавились за исключением самого последнего. Его подавить только путем правок шаблона полностью не получится. Можно в этом случае у всех секций отчета установить свойство Visible := False, но пустой лист все равно будет печататься.
А название контрагента никуда не пропадает. Возможно при вставке программного кода в событие OnBeforePrint Вы допустили какие-то синтаксические ошибки, из-за которых выполнение скрипта в месте ошибки "молча" прерывалось и не выполнялся последующий код, где происходит инициализация переменной с именем контрагента: Name_an := [DialogForm.DataPartner."ПОЛНОЕ_НАИМЕНОВАНИЕ"];
(Может быть при вставке в конце пропустили оператор end;)
Страницы: 1
Читают тему (гостей: 1)