Как сохранить печатную форму

1. kar911 08.09.16 14:45 Сейчас в теме
я вывожу документ на печать через
    КоллекцияПечатныхФорм = УправлениеПечатьюКлиент.НоваяКоллекцияПечатныхФорм("ДоговорТорговли");
    ПечатнаяФорма = УправлениеПечатьюКлиент.ОписаниеПечатнойФормы(КоллекцияПечатныхФорм, "ДоговорТорговли");
    ПечатнаяФорма.СинонимМакета = "Договор торговли";
    ПечатнаяФорма.ТабличныйДокумент = ТабДок;
    ПечатнаяФорма.ИмяФайлаПечатнойФормы = "ДоговорТорговли";
    
    ОбластиОбъектов = Новый СписокЗначений;
    УправлениеПечатьюКлиент.ПечатьДокументов(КоллекцияПечатныхФорм, ОбластиОбъектов);
Показать


после того как появиться печатная форма документа я изменяю часть текста на ней , можно ли после печати сохранить эту печатную форму чтобы в последующем открыть её
По теме из базы знаний
Ответы
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
2. olegmedvedev 65 08.09.16 14:49 Сейчас в теме
(1) user596708_tagukoce,
В режиме 1С передприятия вы открываете получившуюся печатную форму,меняете, - файл-сохранить как .mxl, потом можете открыть изменененную в любой момент. Это требуется?
4. kar911 08.09.16 15:23 Сейчас в теме
(2) olgerd666, типо этого но программно
3. Boneman 298 08.09.16 14:50 Сейчас в теме
(1) user596708_tagukoce, что значит сохранить ?
Изменить макет ? Или просто в экселевский файл ?
5. kar911 08.09.16 15:27 Сейчас в теме
(3) Boneman,
что значит сохранить ?
ну или в хранилище значений или куда нибудь на диске чтобы в 1с можно было открыть
Изменить макет ?
изменить печатную форму
6. olegmedvedev 65 08.09.16 16:58 Сейчас в теме
(5) user596708_tagukoce,
ну например вот так
ТабДокумент.Записать("С:\ИмяФайла.xls", ТипФайлаТабличногоДокумента.XLS);
и вы сохраните вашу печатную форму в экселе на диск С
Так подойдет?
Потом можете открыть в любой момент
7. kar911 08.09.16 18:48 Сейчас в теме
(6) olgerd666, так я пробовал но это сохранение будет выполняться после нажатие кнопки печати на форме документа перед открытием печатной формы а как сделать чтобы оно сохраняло когда я внесу какието изменения в открытую печатную форму. Куда код этот надо будет вписать?
8. white-mount 08.09.16 20:54 Сейчас в теме
(7) user596708_tagukoce,
Сравните по длине - открытый текст в строку и набранный. Это самый простой способ верификации.
9. olegmedvedev 65 09.09.16 09:06 Сейчас в теме
(7) user596708_tagukoce, Не совсем понял последовательность(
То есть вы открыли документ, сформировали печатную форму, исправили в ней чтото, потом сохранили?
В этом случае это не совсем программно получается, можно вообще стандартным диалогом сохранения файлов воспользоваться.

Или вас интересует - Вы открыли ПФ в ней написали в режиме редактирования какие-то данные, а потом хотите узнать что было написано?
Типа защита от ручного редактирования Печатных форм? Если продавец решит вручную подправить макет с указанием "левой" суммы?
10. kar911 09.09.16 09:46 Сейчас в теме
(9) olgerd666, первый вариант вроде ну я думал может можно это както программно сделать
открываю печатную и чтобы она сохранялась после того как её напечатают без разницы изменяли или нет, ели изменили то сохранилась чтобы с изменениями
Прикрепленные файлы:
11. olegmedvedev 65 09.09.16 09:54 Сейчас в теме
(10) user596708_tagukoce, кхм, ну можно сделать для ПФ - форму, добавить туда кнопку "Сохранить", либо при закрытии этой формы сделать чтобы эта ПФ куда либо сохранялась.
ТабДокумент.Записать("С:\ИмяФайла.xls", ТипФайлаТабличногоДокумента.XLS);
либо любой другой нужный вам формат.
Простую проверку двух файлов предложили в (7), либо сохраняйте в .mxl и можете сравнить через типовой "сравнить файлы" в 1С. там построчно покажет - если что изменено
12. kar911 09.09.16 10:35 Сейчас в теме
(11) olgerd666, а не подскажешь как писать не весь путь а чтобы просто только имя файла и папку одну и чтобы в корневую папку базы сохронялось
18. lefthander 11.09.16 07:45 Сейчас в теме
(1) user596708_tagukoce, раздел нси и администрирование - печатные формы и обработки- макеты печатных форм - можно открыть любую печатную форму конфигурации и изменить то что вам надо, только делайте копию формы, что бы не сломать ее.
13. olegmedvedev 65 09.09.16 10:45 Сейчас в теме
Пишем дополнительную функцию
Функция КаталогИБ()
	СтрокаСоединенияСБД = СтрокаСоединенияИнформационнойБазы();
	// в зависимости от того файловый это вариант БД или нет,  по-разному отображается путь в БД 
	ПозицияПоиска = Найти(Врег(СтрокаСоединенияСБД), "FILE=");
	Если ПозицияПоиска = 1 тогда
		// Файловая	
		Возврат Сред(СтрокаСоединенияСБД,7,СтрДлина(СтрокаСоединенияСБД)-8)+"\";
	Иначе 
		// Серверная - Используем КаталогВременныхФайлов() 
		Возврат КаталогВременныхФайлов();
	КонецЕсли;
КонецФункции    
Показать
14. olegmedvedev 65 09.09.16 10:47 Сейчас в теме
(13) olgerd666,
потом
КаталогФайла = КаталогИБ()
ТабДокумент.Записать(КаталогФайла+"ИмяФайла.MXL", ТипФайлаТабличногоДокумента.MXL);
либо интересующий нас формат, лучше mxl - если сравнивать стандартным "файл-сравнитьфайлы"
15. olegmedvedev 65 09.09.16 10:48 Сейчас в теме
(13) olgerd666,
Забыл написать - это если база ФАЙЛОВАЯ. у вас файловая БД?
16. kar911 09.09.16 10:56 Сейчас в теме
(15) olgerd666, да
а как добавить кнопку в печатную форму я вот открываю её
КоллекцияПечатныхФорм = УправлениеПечатьюКлиент.НоваяКоллекцияПечатныхФорм("ДоговорТорговли");
    ПечатнаяФорма = УправлениеПечатьюКлиент.ОписаниеПечатнойФормы(КоллекцияПечатныхФорм, "ДоговорТорговли");
    ПечатнаяФорма.СинонимМакета = "Договор торговли";
    ПечатнаяФорма.ТабличныйДокумент = ТабДок;
    ПечатнаяФорма.ИмяФайлаПечатнойФормы = "ДоговорТорговли";
    
    ОбластиОбъектов = Новый СписокЗначений;
    УправлениеПечатьюКлиент.ПечатьДокументов(КоллекцияПечатныхФорм, ОбластиОбъектов);
Показать
17. olegmedvedev 65 09.09.16 11:03 Сейчас в теме
(16) user596708_tagukoce,
открываю печатную и чтобы она сохранялась после того как её напечатают без разницы изменяли или нет

мне кажется в этом случае лучше поискать где вызывается процедура печати и воткнуться туда
Оставьте свое сообщение
Вакансии
Программист 1С
Москва
зарплата от 180 000 руб. до 220 000 руб.
Полный день

Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)

Программист 1С
Москва
зарплата от 250 000 руб.
Полный день

Программист 1C
Волгоград
зарплата от 200 000 руб.
Полный день

Аналитик
Санкт-Петербург
зарплата от 200 000 руб. до 250 000 руб.
Полный день