Akam1
Комса | Редактировать | Профиль | Сообщение | ICQ | Цитировать | Сообщить модератору isoriksib Цитата: А тогда я чего то не догоняю, какие проблемы? В документе Реализация товаров и услуг есть закладка Дополнительно, где можно указать грузоотправителя\грузополучателя и они будут выведены в печатной форме | Насколько я помню существующее законодательство, то если в реализации оказываются ТОЛЬКО услуги, то в строках грузоотправитель и грузополучатель ставятся прочерки. И это верно, т.к. в данном случае слова ГРУЗОполучатель и ГРУЗОотправитель не имеют смысла. Но т.к. у нас зачастую бухгалтеры различных мелких и даже крупных предприятий считают себя пупами Земли, то приходится изгаляться чтобы не потерять клиентов. Лично я отказываюсь делать это глупое изменение и на все вопросы менеджеров говорю - или пляшите под дудку тупых покупателей и ставьте все время вручную или попробуйте все-таки их вразумить этого не делать. lmlights Вам необходим какой-нибудь программист или же задайте вопрос в 1C Программирование и поддержка. Идея может быть такая: Идем в модуль документа СчетФактураВыданный, в Функцию СобратьДанныеПоРеализацияТоваровУслуг(). Там в структуру ДанныеДляПечати изначально заносятся и Грузоотправитель и Грузополучатель, которые будут выведены в печатную форму. Однако потом происходит перебор табличной части Товары Код: .... ЕстьТовары = Ложь; Пока ВыборкаСтрокТовары.Следующий() = 1 Цикл Если ВыборкаСтрокТовары.ID = 1 Тогда ЕстьТовары = Истина; КонецЕсли;...... | и получается, что если хоть один товар есть, то ЕстьТовары = Истина, а если нет, то ЕстьТовары остается Ложь. А потом происходит подмена Код: Если Не ЕстьТовары Тогда ДанныеДляПечати.Грузоотправитель = ""; ДанныеДляПечати.Грузополучатель = ""; ДанныеДляПечати.АдресДоставки = ""; КонецЕсли; | Вот надо при этой подмене и проверять - пустое ли значение ТекущееОснование.Грузополучатель или нет. Типа Код: Если Не ЕстьТовары И НЕ ЗначениеЗаполнено(ТекущееОснование.Грузополучатель) Тогда ДанныеДляПечати.Грузоотправитель = ""; ДанныеДляПечати.Грузополучатель = ""; ДанныеДляПечати.АдресДоставки = ""; КонецЕсли; | Вот как-то так.
---------- В правильно поставленном вопросе всегда содержится 50% ответа Все будет так, как должно быть. Даже если будет иначе. |
|