Необходимо добавить еще одну форму счета на оплату
По теме из базы знаний
- Создание внешних печатных форм для 1С 8.1 на основе типовых. (Через подмену контекста).
- Печать счета на оплату с печатью и подписью
- Внешняя печатная форма «СчетНаОплату» для Управление Небольшой Фирмой 1.4
- Создание внешних печатных форм под управляемым приложением с нуля
- Оплата счетов в 1С:Бухгалтерии: выставлено и оплачено
Ответы
Подписаться на ответы
Инфостарт бот
Сортировка:
Древо развёрнутое
Свернуть все
(3) *Evgesha*,
С точки зрения 1С-методологии правильно сделать как рекомендует deniseek77 в (2), но и у KontoraB в (4) тоже решение.
В качестве подсказки для решения, подсказываемого KontoraB немного "покодировал", может и пригодится.
Я использовал типовую конфигурацию "Бухгалтерия 7.7". В процедуре "Печать" экранной формы документа "Счет" заменить блок на предлагаемый
С точки зрения 1С-методологии правильно сделать как рекомендует deniseek77 в (2), но и у KontoraB в (4) тоже решение.
В качестве подсказки для решения, подсказываемого KontoraB немного "покодировал", может и пригодится.
Я использовал типовую конфигурацию "Бухгалтерия 7.7". В процедуре "Печать" экранной формы документа "Счет" заменить блок
ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\1cbs.mxl";
Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
Иначе
Таб.ИсходнаяТаблица("Таблица");
КонецЕсли;
Список = СоздатьОбъект("СписокЗначений");
Список.ДобавитьЗначение(0, "Встроеннная");
Список.ДобавитьЗначение(1, "1cbs.mxl");
Список.ДобавитьЗначение(2, "1cbs1.mxl");
ВыбранноеЗначение = 0;
Если Список.ВыбратьЗначение(ВыбранноеЗначение,"",,,1)<>1 Тогда
Возврат;
КонецЕсли;
Если ВыбранноеЗначение > 0 Тогда
ИмяФайлаПечатнойФормы = КаталогИБ()+"ExtForms\PrnForms\1cbs"+?(ВыбранноеЗначение=1,"","1")+".mxl";
Если ФС.СуществуетФайл(ИмяФайлаПечатнойФормы) = 1 Тогда
Таб.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
Иначе
Сообщить("Не найден шаблон "+ИмяФайлаПечатнойФормы);
Возврат;
КонецЕсли;
Иначе
Таб.ИсходнаяТаблица("Таблица");
КонецЕсли;
Показать
(6) l_user, Заменила блок, выходит следующая ошибка:
Таб<<?>>.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
{Документ.Счет.Форма.Модуль(419)}: Переменная не определена (Таб)
Таб<<?>>.ИсходнаяТаблица("Таблица");
{Документ.Счет.Форма.Модуль(425)}: Переменная не определена (Таб)
Таб<<?>>.ВывестиСекцию("Шапка");
{Документ.Счет.Форма.Модуль(428)}: Переменная не определена (Таб)
Таб<<?>>.ВывестиСекцию("Строка");
{Документ.Счет.Форма.Модуль(435)}: Переменная не определена (Таб)
Таб<<?>>.ВывестиСекцию("Подвал");
{Документ.Счет.Форма.Модуль(438)}: Переменная не определена (Таб)
Таб<<?>>.Опции(0,0,0,0,"ОпцииПечатиСчета","ОкноСчета");
{Документ.Счет.Форма.Модуль(440)}: Переменная не определена (Таб)
Таб<<?>>.ТолькоПросмотр(1);
{Документ.Счет.Форма.Модуль(441)}: Переменная не определена (Таб)
Таб<<?>>.Показать("Печать счета","");
{Документ.Счет.Форма.Модуль(442)}: Переменная не определена (Таб)
Таб<<?>>.ИсходнаяТаблица(ИмяФайлаПечатнойФормы);
{Документ.Счет.Форма.Модуль(419)}: Переменная не определена (Таб)
Таб<<?>>.ИсходнаяТаблица("Таблица");
{Документ.Счет.Форма.Модуль(425)}: Переменная не определена (Таб)
Таб<<?>>.ВывестиСекцию("Шапка");
{Документ.Счет.Форма.Модуль(428)}: Переменная не определена (Таб)
Таб<<?>>.ВывестиСекцию("Строка");
{Документ.Счет.Форма.Модуль(435)}: Переменная не определена (Таб)
Таб<<?>>.ВывестиСекцию("Подвал");
{Документ.Счет.Форма.Модуль(438)}: Переменная не определена (Таб)
Таб<<?>>.Опции(0,0,0,0,"ОпцииПечатиСчета","ОкноСчета");
{Документ.Счет.Форма.Модуль(440)}: Переменная не определена (Таб)
Таб<<?>>.ТолькоПросмотр(1);
{Документ.Счет.Форма.Модуль(441)}: Переменная не определена (Таб)
Таб<<?>>.Показать("Печать счета","");
{Документ.Счет.Форма.Модуль(442)}: Переменная не определена (Таб)
(12) *Evgesha*,
Если вы ничего не меняли в процедуре "Печать", и значения списка значений у вас такие же, какие я выкладывал в качестве примера: то есть "1 = 1cbs.mxl". То после строчки нужно добавить строчку Попробуйте.
Если вы ничего не меняли в процедуре "Печать", и значения списка значений у вас такие же, какие я выкладывал в качестве примера: то есть "1 = 1cbs.mxl". То после строчки
Таб.Опции(0,0,0,0,"ОпцииПечатиСчета","ОкноСчета");
Таб.ПараметрыСтраницы(?(ВыбранноеЗначение=1,2,1));
добавлю свои 5 копеек
обычно иду по пути добавления новой внешней печатной формы, чем нового макета и прописывания в модуле формы документа выбора макетов.
представьте что надо делать обновления, и с каждый обновлением надо по-новой повторять Ваши изменения, если в обновлении затронулся тот же документ. а если забыли? а если кто-то другой обновлял?
с внешней печатной формой проще. добавил и не мучаешься обновляя.
обычно иду по пути добавления новой внешней печатной формы, чем нового макета и прописывания в модуле формы документа выбора макетов.
представьте что надо делать обновления, и с каждый обновлением надо по-новой повторять Ваши изменения, если в обновлении затронулся тот же документ. а если забыли? а если кто-то другой обновлял?
с внешней печатной формой проще. добавил и не мучаешься обновляя.
Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот