Имя: Пароль:
1C
1C 7.7
v7: Открытие окна в данном режиме недоступно! как решить проблему?
0 Invzor
 
24.01.14
13:39
Функция ОткрытьФорму не работет... как отурыть форму списка подчиненного справочника Договоры...

Процедура ЧитатьШтрих()
    Сообщить("Читаю штрихкод...");
    СпрКонтр = СоздатьОбъект("Справочник.Контрагенты");
    СпрДог = создатьОбъект("Справочник.Договоры");
    СпрШтрих = СоздатьОбъект("Справочник.Идентификатор");
Если СпрШтрих.НайтиПоКоду(Число(СоСканераШтрих)) =1 тогда  
    Сообщить(СпрШтрих.Код);
Если СоСканераШтрих >= 1 тогда
    
    

    СпрКонтр.ВыбратьЭлементы();
//    Сообщить(СпрКонтр.Наименование);
    Пока СпрКонтр.ПолучитьЭлемент() = 1 Цикл
    //    Сообщить(СпрКонтр.Наименование); конецЦикла;
        Если СпрКонтр.ЭтоГруппа() = 0 Тогда                      
        СпрДог.ИспользоватьВладельца(СпрКонтр);
                                          
    
             //открыть догооры
    КонтекстФормы = "";
    ОткрытьФорму("Справочник.Договоры", КонтекстФормы);
    КонтекстФормы.ИспользоватьВладельца(СпрКонтр.ТекущийЭлемент());    

        
     СпрДог.ВыбратьЭлементы();  
    // Сообщить(СпрДОг.ИдентификаторШтриха);
     Пока СпрДог.ПолучитьЭлемент() = 1 цикл
     Если СпрДог.ИдентификаторШтриха.код = СпрШтрих.Код тогда  
         
    
    //         сообщить(СпрДог.Код);
     сообщить(СпрКонтр.Наименование);
         СпрДог.Статус = Перечисление.СтатусДоговора.Действует;
         СпрДог.Записать();
         
         
          конецЕсли;
     КонецЦИкла;  
         КонецЕсли;
     КонецЦикла;  
     СоСканераШтрих = "";  
     Сообщить("обработал");  
    
    
Иначе Сообщить("Введен нулевой ШТРИХКОД");
конецЕсли;    
    
Иначе Сообщить("Такого штрихКода нет в базе!");
конецЕсли;            

КонецПроцедуры
1 dachnik
 
24.01.14
13:45
казалось бы, при чем тут v8?
2 Invzor
 
24.01.14
13:46
сорри 1С 7.7
3 Invzor
 
24.01.14
14:13
(1) это ваш коронный совет я так понимаю? а сказать что -то по делу не вариант?
4 Invzor
 
24.01.14
14:14
закройте тему.
5 Torquader
 
24.01.14
15:51
Если открытие окна недоступно, то или создавать обработчик ожидания, который потом откроет нужное окно, или делать "ложное закрытие", чтобы можно было открыть форму из процедуры ПриЗакрытии.
Независимо от того, куда вы едете — это в гору и против ветра!