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

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,
открываю печатную и чтобы она сохранялась после того как её напечатают без разницы изменяли или нет

мне кажется в этом случае лучше поискать где вызывается процедура печати и воткнуться туда
+
Внимание! Тема сдана в архив

Для получения уведомлений об ответах подключите телеграм бот:
Инфостарт бот