Форум 1С
Программистам, бухгалтерам, администраторам, пользователям
Задай вопрос - получи решение проблемы
22 ноя 2024, 11:23

Помогите сделать печатный документ

Автор vaxilion, 07 июн 2016, 17:46

0 Пользователей и 1 гость просматривают эту тему.

Golickoff

Ходят слухи, что если дважды кликнуть на {Документ.ВыданнаяНН.МодульМенеджера(147,85)}: Ожидается символ ')', курсор перейдёт на строку с недостающей скобкой.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

vaxilion

:D
{Документ.ВыданнаяНН.МодульМенеджера(147)}: Ошибка при вызове метода контекста (Выбрать)
      ДатаДокумента = Выборка.Выбрать(ДатаДокумента);
по причине:
Несоответствие типов (параметр номер '1')
Добавлено: 08 июн 2016, 16:00


Цитата: vaxilion от 08 июн 2016, 15:55
:D
{Документ.ВыданнаяНН.МодульМенеджера(147)}: Ошибка при вызове метода контекста (Выбрать)
      ДатаДокумента = Выборка.Выбрать(ДатаДокумента);
по причине:
Несоответствие типов (параметр номер '1')

Если делаю вот так, ДатаДокумента = Выборка.Выбрать();  ошыбки нет, но не работает

Golickoff

 :angry:
ОбластьШапка.Параметры.Заполнить(Выборка);
ДатаДокумента = Выборка.Выбрать(ДатаДокумента); //это из вашего же примера. Что там за выборка и как из неё вытащить нужный параметр вам должно быть виднее
ДатаТекст=СтрЗаменить(Строка(Формат(ДатаДокумента,"MM.DD.yyyy"),".","");
Для Симв = 1 По СтрДлина(ДатаТекст) Цикл
     ТекущийСимвол = Сред(ДатаТекст, Симв, 1);
     НужнаяОбласть.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол;
КонецЦикла;

Добавлено: 08 июн 2016, 16:10


Выше вы писали про ВыданнаяНН.ДатаДокумента. Там где написано Выборка.Выбрать(ДатаДокумента) Должна быть эта ВыданнаяНН.ДатаДокумента. Откуда она берётся и сохраняется ли она к этому моменту, я не знаю. Я лишь пишу, что в переменную ДатаТекст должна превратиться та самая дата, откуда бы она не взялась.
Добавлено: 08 июн 2016, 16:12


Я посмотрел код. Должно быть так:
ОбластьШапка.Параметры.Заполнить(Выборка);
ДатаДокумента = Выборка.Дата;
ДатаТекст=СтрЗаменить(Строка(Формат(ДатаДокумента,"MM.DD.yyyy")),".","");
Для Симв = 1 По СтрДлина(ДатаТекст) Цикл
     ТекущийСимвол = Сред(ДатаТекст, Симв, 1);
     НужнаяОбласть.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол;
КонецЦикла;

Добавлено: 08 июн 2016, 16:15


Время позднее, не могу продолжать дискуссию в течение 10 часов.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

vaxilion

{Документ.ВыданнаяНН.МодульМенеджера(151)}: Поле объекта не обнаружено (ДатаДокумента_1)
     ОбластьШапка.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол;
Добавлено: 08 июн 2016, 17:23


Цитата: vaxilion от 08 июн 2016, 16:22
{Документ.ВыданнаяНН.МодульМенеджера(151)}: Поле объекта не обнаружено (ДатаДокумента_1)
     ОбластьШапка.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол;

Эту проблему решыл.

Теперь {Документ.ВыданнаяНН.МодульМенеджера(151)}: Поле объекта не обнаружено (ДатаДокумента_9)
     ОбластьЗаголовок.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол;

Golickoff

Поставьте точку останова и посмотрите в табло значение переменной ДатаТекст. Оно получается слишком длинным. В идеале должно быть значение вида '08062016', т.е. число, месяц и год без дополнительных символов. Посмотрите что представляет из себя переменная даты и в строке присвоения значения перемнной ДатаТекст приведите дату к нужному формату в форматировании. Или, если вы не понимаете о чём я, просто замените строку НужнаяОбласть.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол; на
Попытка
    НужнаяОбласть.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол;
Исключение
КонецПопытки;

Добавлено: 09 июн 2016, 02:15


Или поменяйте стркоу Для Симв = 1 По СтрДлина(ДатаТекст) Цикл на Для Симв = 1 По 8 Цикл Но последние два варианта весьма так себе. Сначала нужно разобраться как выглядит переменная ДатаТекст и убедиться, что в ней нет лишних знаков пунктуации.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

vaxilion

Цитата: Golickoff от 09 июн 2016, 02:12
Поставьте точку останова и посмотрите в табло значение переменной ДатаТекст. Оно получается слишком длинным. В идеале должно быть значение вида '08062016', т.е. число, месяц и год без дополнительных символов. Посмотрите что представляет из себя переменная даты и в строке присвоения значения перемнной ДатаТекст приведите дату к нужному формату в форматировании. Или, если вы не понимаете о чём я, просто замените строку НужнаяОбласть.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол; на
Попытка
    НужнаяОбласть.Параметры["ДатаДокумента_" + Строка(Симв)] = ТекущийСимвол;
Исключение
КонецПопытки;

Добавлено: 09 июн 2016, 02:15


Или поменяйте стркоу Для Симв = 1 По СтрДлина(ДатаТекст) Цикл на Для Симв = 1 По 8 Цикл Но последние два варианта весьма так себе. Сначала нужно разобраться как выглядит переменная ДатаТекст и убедиться, что в ней нет лишних знаков пунктуации.
Значение ДатаТекст = "31082015 00:00:00"

Golickoff

Строку ДатаТекст=СтрЗаменить(Строка(Формат(ДатаДокумента,"MM.DD.yyyy")),".",""); меняем на ДатаТекст=СтрЗаменить(Строка(Формат(ДатаДокумента,"ДЛФ=Д")),".",""); Всё
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

vaxilion

Все работает, спасибо большое. Буду использовать эту конструкцию в будущем!

Golickoff

Цитата: vaxilion от 09 июн 2016, 09:36
Все работает, спасибо большое. Буду использовать эту конструкцию в будущем!
Лишь бы понимали, что за что отвечает.
Правило поведения на форуме №6: Не следует пытаться привлечь внимание к своему сообщению ... рассылкой персональных сообщений и/или электронных писем отдельным участникам форума с просьбой ответить в теме.

Теги:

Похожие темы (5)

Рейтинг@Mail.ru

Поиск