|
Прервать печать ПФ | ☑ | ||
---|---|---|---|---|
0
Shouldercannon
19.11.20
✎
14:12
|
Доброго времени суток!
[CODE]Функция Печать(СсылкаНаДок, ТабДок) Экспорт Макет = ПолучитьМакет("Макет"); ДанныеДляЗаполнения = ПодготовитьДанные(СсылкаНаДок); ЗаполнитьЗначенияСвойств(Макет.Параметры, ДанныеДляЗаполнения); ТабДок.Вывести(Макет); Возврат ТабДок; КонецФункции Функция ПодготовитьДанные(ДокОбъект) Экспорт СтруктураВозврата = Новый Структура("Имя"); Имя = "Something"; Если НЕ СтрДлина(Имя) > 0 Тогда Предупреждение("Поле заполнено неверно!", , "Предупреждение!"); Возврат Ложь; // Неверное решение КонецЕсли; Возврат СтруктураВозврата; КонецФункции[/CODE] Пытаюсь прервать выполнение печати формы, если длина строки [B]Имя[/B] меньше нуля. Не могу никак сообразить как это правильно сделать. [CODE]Возврат Ложь;[/CODE] Явно не то, что нужно. |
|||
1
ZDenis
19.11.20
✎
14:23
|
(0)
ДанныеДляЗаполнения = ПодготовитьДанные(СсылкаНаДок); Если ДанныеДляЗаполнения = Ложь Тогда Возврат; КонецЕсли; А вообще "Имя" откуда появляется? Можно ведь сразу не печатать если оно не то |
|||
2
Kassern
19.11.20
✎
14:34
|
Это вообще что за вырвиглаз?
СтруктураВозврата = Новый Структура("Имя"); //на кой эта стурктура, если ее дальше не используешь? Имя = "Something"; Если НЕ СтрДлина(Имя) > 0 Тогда // во-первых, переменная "имя" всегда будет заполнена, строчкой выше ты ее заполнил строкой "Something". Услоие по факту бесполезное. //Если уж хочешь что-то проверять на заполненность используй ЗначениеЗаполнено(ТвоеЗначение). Если в общем, при ошибке заполнения документа нужно прервать печать и сообщить об ошибках, возвращай структуру, где будут ключи ТабДок, ТекстОшибки. Если текстОшибки заполнен, то не печатай и сообщай его, иначе печатай табдок. |
|||
3
Shouldercannon
19.11.20
✎
16:19
|
Эта структура нужна для заполнения шаблона. Это часть кода. Перменная Имя может быть и пустой - это всего-лишь пример.
|
|||
4
dka80
19.11.20
✎
16:27
|
Если ПустаяСтрока(Имя)
но учти отличия между ПустаяСтрока и ЗначениеЗаполнено |
|||
5
ДенисЧ
19.11.20
✎
16:33
|
ДанныеДляЗаполнения = ПодготовитьДанные(СсылкаНаДок);
Если НЕ ДанныеДляЗаполнения Тогда Возврат; КонецЕсли |
|||
6
ДенисЧ
19.11.20
✎
16:34
|
Возврат Неопределено
Или Возврат Табдок; // Без заполнения |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |