Имя: Пароль:
1C
1С v8
В обычное приложение добавили упр. форму списка, как разделить код исполнения на ОФ И УФ?
0 SkillUp
 
09.11.20
16:22
Здравствуйте, в обычное приложение добавлена была форма списка на УФ (для отдельных пользователей). Все отлично, но обработки (пометить на удаление, провести). Ошибки идут из модуля объекта, как разделить код в зависимости от формы из которой вызываются обработчики объекта? Конфигурация - не типовая...

Пример ошибок:

{Документ.ПеремещениеТоваров.МодульОбъекта(1680,25)}: Переменная не определена (КодВозвратаДиалога)
        СписокКнопок.Добавить(<<?>>КодВозвратаДиалога.Да,"+");
{Документ.ПеремещениеТоваров.МодульОбъекта(1681,25)}: Переменная не определена (КодВозвратаДиалога)
        СписокКнопок.Добавить(<<?>>КодВозвратаДиалога.Нет,"-");
{Документ.ПеремещениеТоваров.МодульОбъекта(1682,25)}: Переменная не определена (КодВозвратаДиалога)
        СписокКнопок.Добавить(<<?>>КодВозвратаДиалога.Отмена,"Отмена");
{Документ.ПеремещениеТоваров.МодульОбъекта(1684,16)}: Переменная не определена (КодВозвратаДиалога)
        Если Ответ = <<?>>КодВозвратаДиалога.Отмена Тогда
{Документ.ПеремещениеТоваров.МодульОбъекта(1698,16)}: Переменная не определена (КодВозвратаДиалога)
        Если Ответ = <<?>>КодВозвратаДиалога.Да Тогда
{Документ.ПеремещениеТоваров.МодульОбъекта(1721,59)}: Переменная не определена (КодВозвратаДиалога)
            Если стр.Количество - стр.КоличествоУчет > 0 и Ответ = <<?>>КодВозвратаДиалога.да Тогда
{Документ.ПеремещениеТоваров.МодульОбъекта(1724,64)}: Переменная не определена (КодВозвратаДиалога)
            ИначеЕсли стр.Количество - стр.КоличествоУчет < 0 и Ответ = <<?>>КодВозвратаДиалога.Нет Тогда
{Документ.ПеремещениеТоваров.МодульОбъекта(1683,11)}: Процедура или функция с указанным именем не определена (Вопрос)
        Ответ = <<?>>Вопрос("Что создаем",СписокКнопок);


Пробовал проблемные моменты, обойти так. #Если НЕ ТолстыйКлиентУправляемоеПриложение Тогда    Не помогает...
1 SkillUp
 
09.11.20
16:23
Основной режим работы  1С- толстый клиент, обычное приложение....
2 RomanYS
 
09.11.20
16:27
>> #Если НЕ ТолстыйКлиентУправляемоеПриложение Тогда
Зачем так сложно, почему не просто
#Если Клиент Тогда

&
3 H A D G E H O G s
 
09.11.20
16:28
#Если ТолстыйКлиентОбычноеПриложение Тогда
СписокКнопок.Добавить(<<?>>КодВозвратаДиалога.Да,"+");
4 H A D G E H O G s
 
09.11.20
16:28
(2) Потому что есть ТолстыйКлиентОбычноеПриложение, для которого этот кусок копрокода пропадет.
5 SkillUp
 
09.11.20
16:29
(2) (3) (4)  Ребят , спасибо Вам!
6 H A D G E H O G s
 
09.11.20
16:30
Вопрос("Что создаем",СписокКнопок);

А ты какого сраена?
А че по мелочи?
А если найду?
Ты Егурца знаешь? А Пысю? Нет? Ну и лови двоечку!
7 RomanYS
 
09.11.20
16:31
(4) Почему пропадет то? "ТолстыйКлиентОбычноеПриложение" не является частным случаем "Клиент"?
8 H A D G E H O G s
 
09.11.20
16:33
(7) Да, чет затупил. Можно и просто #Если Клиент
9 RomanYS
 
09.11.20
16:40
(8) Есть такой режим "УП в толстом клиенте" в котором всё вообще странно.
Затестил следущий код в модуле в таком режиме, выводит оба сообщения!

Процедура ОбработкаЗаполнения(ДанныеЗаполнения, ТекстЗаполнения, СтандартнаяОбработка)
    #Если Клиент Тогда
        Сообщить("Клиент");
    #КонецЕсли
    #Если Сервер Тогда
        Сообщить("Сервер");
    #КонецЕсли
КонецПроцедуры

Поэтому на всякий случай вероятно (3) лучше :)
10 SkillUp
 
09.11.20
16:43
(9) Запомнил...
11 H A D G E H O G s
 
09.11.20
16:51
(9) Его никогда не пользуют.
Закон Брукера: Даже маленькая практика стоит большой теории.