Имя: Пароль:
1C
1С v8
Сохранение табличного документа с определенным именем
0 Droning1C
 
17.01.19
10:28
Доброго времени суток! Пытаюсь сделать так, чтобы при сохранении табличного документа в файл, автоматически подставлялось название документа. Пишу так-

ТабДокумент.ИспользуемоеИмяФайла = Строка(СсылкаНаОбъект);

В итоге при нажатии на кнопку сохранения строка с названием все равно пустая. В чем ошибка?
1 spiller26
 
17.01.19
10:40
(0) А если
ТабДокумент.ИспользуемоеИмяФайла = "моё имя"
всё прокатывает?
2 Вафель
 
17.01.19
10:43
разве не по заголовку идет имя?
3 Droning1C
 
17.01.19
10:47
(2) По всей видимости нет. Заголовок заполнен так- УниверсальныеМеханизмы.НапечататьДокумент(ТабДок,,,СсылкаНаОбъект);
4 Вафель
 
17.01.19
10:48
(3) этот код не устанавливает заголовок
5 Droning1C
 
17.01.19
10:49
(1) Так тоже не прокатывает
6 MrCoffin
 
17.01.19
10:49
Напиши
ТабДокумент.Показать(Строка(СсылкаНаОбъект));
7 Droning1C
 
17.01.19
10:49
(4) Функция НапечататьДокумент(ПечДокумент, КоличествоЭкземпляров = 1, НаПринтер = Ложь, Заголовок = "", Ссылка = Неопределено, ПараметрыПечДокумента = Неопределено) Экспорт
8 Droning1C
 
17.01.19
10:51
(6) написал, а смысл?
9 Droning1C
 
17.01.19
10:51
А можно ли как-то отладчиком полазить в процедуре сохранения? работаю на УПП 1.2. Где ее искать? Извиняюсь, если вопрос глупый, я пока салага еще
10 Droning1C
 
17.01.19
10:53
(6) Кстати, если Показать использовать, то имя подставляется... А мне бы без этого метода обойтись..
11 MrCoffin
 
17.01.19
10:56
(8), (10) Известная особенность, у меня так же работает.
12 Droning1C
 
17.01.19
10:58
(11) я вот не вижу где программно заполнить заголовок, кроме как в функции напечатать документ. Если я правильно понял, то реально подставляется значение заголовка. Но вот как его установить для табдока?
13 Droning1C
 
17.01.19
11:00
(11) нету у табдока параметра заголовок
14 MrCoffin
 
17.01.19
11:01
(12) Функция НапечататьДокумент ЕМНИП выводит форму с табличным документом и заголовком ты установишь только заголовок формы или название вкладочки, где будет это документ. Если ты делаешь ВПФ, то сделай в основной процедуре "Возврат Неопределено;", а перед этим выводи табличный документ методом "Показать" с заголовком.
15 Droning1C
 
17.01.19
11:05
(14) а если я хочу всем документам в базе сделать такое автоматическое сохранение наименованя? я же ведь могу подрехтовать процедуру НапечататьДокумент. Верно?
16 MrCoffin
 
17.01.19
11:11
(15) Технически да. Переделывай эту общую форму.
17 Droning1C
 
17.01.19
11:13
(14) просто насколько я понимаю, если сделать так, то эта форма открываться не будет. а там отправка по почте и тд. Эти плюшки затеряются.
18 Droning1C
 
17.01.19
11:14
(16) и еще такой вопрос- Где же все таки найти процедуру сохранения? хочу отладчиком там полазить..
19 Droning1C
 
17.01.19
11:16
(18) если точнее то стандартная команда где отлаживается?
20 MrCoffin
 
17.01.19
11:17
(18) В конфигураторе нигде, это метод платформы.
21 Droning1C
 
17.01.19
11:18
(20) грустно(
22 Droning1C
 
17.01.19
11:18
(20) спасибо за помощь
23 Droning1C
 
17.01.19
12:58
В итоге решил сделать в форме печати документа еще одну кнопку. Код команды-



Процедура КоманднаяПанельФормыСохранитьПоЗаголовку(Кнопка)
    
// Запускаем диалог сохранения файла
Табдок = ПечатныйДокумент;
ТабДок.Показать();
Режим = РежимДиалогаВыбораФайла.Сохранение;
Диалог = Новый ДиалогВыбораФайла(Режим);
Диалог.Заголовок = "Выбор файла для сохранения";
Диалог.Фильтр = "Файл excel (*.xls)|*.xls";
Диалог.Расширение = ".xls";
Диалог.ПолноеИмяФайла = СокрЛП(Строка(ОбъектПечати));
Если Не Диалог.Выбрать() Тогда
Возврат;
Иначе
ТабДок.Записать(Диалог.ПолноеИмяФайла);
КонецЕсли;
КонецПроцедуры



Файл сохраняется с нужным именем, НО, когда я открываю файл в экселе выдатеся сообщение "Действительный формат открываемого файла отличается от указываемого его расширением имени файла...Открыть файл?" Соглашаясь, вижу кракозябры вместо нормальной таблицы...
24 Droning1C
 
17.01.19
13:02
Проблема решилась так


ТабДок.Записать(Диалог.ПолноеИмяФайла,ТипФайлаТабличногоДокумента.XLS);
25 catena
 
17.01.19
13:03
Синтаксис:

Записать(<ИмяФайла>, <ТипФайлаТаблицы>)
Параметры:

<ИмяФайла> (обязательный)

Тип: Строка.
Имя файла, в котором сохраняется табличный документ.
<ТипФайлаТаблицы> (необязательный)

Тип: ТипФайлаТабличногоДокумента.
Формат, в котором будет сохранен табличный документ.
Значение по умолчанию: MXL.
Компьютеры — прекрасное средство для решения проблем, которых до их появления не было.