Имя: Пароль:
1C
1C 7.7
v7: Незаполненные реквизиты и проведение документа
,
0 deingvard
 
30.12.15
17:39
Конфигурация 1С 7.7 "Торговля + Склад"

Как сделать в документе "Контакт" чтобы пользователь пока не заполнит определенные реквизиты (Способ, ТиКонтакта, ИсточникРекламы ...)  ,документ не проводился

Не могу найти код в Модуле()))
1 Aleksey
 
30.12.15
17:43
документ явно не типовой.
А так можно взять код из модуля проведения типового документа

...
Если глВсеРеквизитыДокументаЗаполнены(Контекст,
    "Способ,ТиКонтакта,ИсточникРекламы ")=0 Тогда
2 palpetrovich
 
30.12.15
17:44
если реквизиты шапки - в модуле дока:
Функция ПроверкаШапки()
    глВсеВыбрано = 1;
    глВыбранЛи(Способ,"Способ");        
    глВыбранЛи(ТиКонтакта,"ТиКонтакта");
    глВыбранЛи(ИсточникРекламы,"ИсточникРекламы");
    Возврат глВсеВыбрано;
КонецФункции

Процедура ОбработкаПроведения()
    Если ПроверкаШапки()=0 Тогда
        глНеПроводить(Контекст);
        Возврат;
    КонецЕсли;
КонецПроцедуры
3 HawkEye
 
30.12.15
20:31
(0) проверить реквизиты и запретить проведение...

какой код ты ищешь в модуле()))
4 AliAksA
 
06.01.16
15:10
(0) как вариант:

Если ПустоеЗначение(МестоХранения) = 1 Тогда
        Предупреждение("Пожалуйста, укажите место хранения !");
        Активизировать("МестоХранения",1);
        СтатусВозврата(0); Возврат;
    КонецЕсли;
5 AliAksA
 
06.01.16
15:11
+ в процедуре ПриЗаписи()
6 Chameleon1980
 
06.01.16
15:35
(2) а зачем тут функция и возврат, если я правильно понял глВсеВыбрано это глоб переменная.

если же это локальная переменная функции то, думаю, ее нужно еще в глВыбранЛи(Способ,"Способ") передавать для установки

так - на всякий просто в глаза бросилось
7 palpetrovich
 
06.01.16
16:44
(6) ну конечно-же "глВсеВыбрано это глоб переменная"
а Возврат нужен, так  
Процедура ОбработкаПроведения()
    Если ПроверкаШапки()=0 Тогда
        глНеПроводить(Контекст);
        Возврат;
    КонецЕсли;
// ТУТ еще куча строчек которые незачем выполнять если проверка не пройдена
КонецПроцедуры

ну и, на всякий случай

Процедура глВыбранЛи(Что,Стр,НомСтр = 0) Экспорт
    ВСтроке = ?(НомСтр=0,""," в строке "+НомСтр);
    Если ПустоеЗначение(Что)=1 Тогда
        глТрассировка("Не заполнен реквизит "+Стр+ВСтроке+"!",0);
        глВсеВыбрано = 0;
    КонецЕсли;
КонецПроцедуры //глВыбранЛи


зы: механизм типовой, семерошный ...ох уж эти восьмерошники :)
8 Chameleon1980
 
06.01.16
18:42
(7) :) а я уже не знаю кто.