Помощь - Поиск - Пользователи - Календарь
Полная версия этой страницы: При закрытии обработки вылетает 1С
Украинский 1С форум: всё про 1С 8.3, 1С 8.2, 1С 8.1, 1С 8.0, 1С 7.7 > Программисту > Программирование в 1С Предприятие 7.7
Talkman
И снова здравствуйте. Проблема у меня. Написал я обработку, которая делает загрузку выгрузку данных из 1С в Агент Плюс и наоборот. Работает без проблем, если не считать, что при закрытии обработки вылетает сеанс 1С. Даже не знаю как конкретнее осве(Я)тить проблему. Добавлю что использую внешние компоненты
 ЗагрузитьВнешнююКомпоненту(ПутьКПримеру+"DialMail.dll");
и
 ЗагруженV7Plus = ЗагрузитьКомпоненту("V7Plus.dll");
. Мануал был просмотрен, пару страниц гугла прочтено, но причины так и не нашел. Может при закрытии необходимо как то выгружать компоненты?... В общем я в замешательстве. Спасибо за внимание. Жду ваших комментариев. Добавлю что ОС Win2k3. Конфигурация 1С ПУБ жестоко переделанная. 7.70.027
Vofka
Даже если просто открыть/закрыть (без нажатия каких-то кнопок и выполнения операций) 1С вылетает?
Talkman
Цитата(Vofka @ 05.10.11, 10:31) необходимо зарегистрироваться для просмотра ссылки
Даже если просто открыть/закрыть (без нажатия каких-то кнопок и выполнения операций) 1С вылетает?

Да
Batchir
В отладчике не видно на чем вылетает?
На других компах, конфигурациях, бд как себя ведет?
Talkman
Листинг процедуры при открытии
Процедура ПриОткрытии()
    ВыборАгента();
    СзК = СоздатьОбъект("СписокЗначений");    
    СзТМЦ = СоздатьОбъект("СписокЗначений");    
    ТзТМЦ = СоздатьОбъект("ТаблицаЗначений");
    ТзТМЦ.НоваяКолонка("ГУИД");
    ТзТМЦ.НоваяКолонка("ПапкаГуид");
    ТзТМЦ.НоваяКолонка("Папка");
    ТзТМЦ.НоваяКолонка("Название");
    ТзТМЦ.НоваяКолонка("Код");
    ТзТМЦ.НоваяКолонка("ВЧем");
    ТзТМЦ.НоваяКолонка("Цена");
    ТзТМЦ.НоваяКолонка("Остаток");
    
    Фирма = СоздатьОбъект("Справочник.Фирмы");
    Фирма.ВыбратьЭлементы();
    Пока Фирма.ПолучитьЭлемент() = 1 Цикл
        Если СокрЛП(Строка(Фирма)) = "Полікор" Тогда
            прервать;
        КонецЕсли;
    КонецЦикла;
    
    СчетПоУмолчанию = СоздатьОбъект("Справочник.НашиДенежныеСчета");
    СчетПоУмолчанию.ИспользоватьРодителя(Фирма);
    СчетПоУмолчанию.НайтиПоКоду(2,0);
    СчетПоУмолчанию = СчетПоУмолчанию.ТекущийЭлемент();    
    СписокФайлов = СоздатьОбъект("СписокЗначений");
    
    Если УстановитьКомпоненту()=0 тогда
        СтатусВозврата(0);
        Возврат;
    КонецЕсли;
    КаталогДобавления = ФС.ТекКаталог();
    МаскаФайлов = "*.*";
    МаскаФайловАрхива = "*.*";
    ИмяАрхива = "archiv.zip";
    Состояние ("Версия компоненты "+SystComm.Версия);  
    
КонецПроцедуры

Процедура ВыборАгента()      //проверки на наличие файлов
    
    Если Агент.Выбран() = 1 Тогда
        ПутьЗагрузки = "C:\APlusSrvRoot\PPC1\To1C.XML";
        ПутьВыгрузки = "C:\APlusSrvRoot\PPC1\From1C.dat";
        
        Если ФС.СуществуетФайл("C:\APlusSrvRoot\PPC1\To1C.ZIP") = 1 Тогда
            ФайлАрхива = "C:\APlusSrvRoot\PPC1\To1C.ZIP";
        Иначе
            Сообщить("Не найден архив выгрузки данных из КПК!","!");
            Возврат;
        КонецЕсли;
        
        Если СокрЛП(Агент.Наименование) = "Зозуля О. С." Тогда  
            
            
            Если Фс.СуществуетФайл(ПутьВыгрузки) = 1 тогда
                Примечание1 = "Файл присутствует";
            Иначе
                Примечание1 = "ФАЙЛ ОТСТУТСТВУЕТ!!!";
            КонецЕсли;    
            
        КонецЕсли;
        
        Если СокрЛП(Агент.Наименование) = "Зозуля О. С." Тогда  

            Если Фс.СуществуетФайл(ПутьЗагрузки) = 1 тогда
                Примечание1 = "Файл присутствует";
            Иначе
                Если ФС.СуществуетФайл("C:\APlusSrvRoot\PPC1\To1C.ZIP") = 1 Тогда
                    Примечание1 = "Есть ZIP файл. Разархивируте для загрузки.";
                иначе
                    Примечание1 = "ФАЙЛ ОТСТУТСТВУЕТ!!!";    
                КонецЕсли;
            КонецЕсли;
            
            Если ФС.СуществуетФайл("C:\APlusSrvRoot\PPC1\To1C.ZIP") = 0 Тогда
                Примечание2 = "Файл к отправке не готов";
            иначе
                Примечание2 = "Файл отправки не забран КПК";
            КонецЕсли;
            
        КонецЕсли;
    КонецЕсли;
    
    Форма.обновить();
КонецПроцедуры



Цитата(Batchir @ 05.10.11, 10:37) необходимо зарегистрироваться для просмотра ссылки
В отладчике не видно на чем вылетает?
На других компах, конфигурациях, бд как себя ведет?

на компе с ОС 2008 Server и той же конфигурацией 1С, но DBF ной только что проверил - не вылетает...


Версии внешних компонент одинаковы.
Flexy
А где инициализация ФС?
Помню у меня без нее не работала работа с файлами и тоже вываливались ошибки.
Делал так:
ФС = СоздатьОбъект("ФС");
...
Talkman
Цитата(Flexy @ 05.10.11, 10:45) необходимо зарегистрироваться для просмотра ссылки
А где инициализация ФС?
Помню у меня без нее не работала работа с файлами и тоже вываливались ошибки.
Делал так:
ФС = СоздатьОбъект("ФС");
...

На сколько я помню в 1С не обязательно создавать объект ФС. Он присутствует по умолчанию. Но сейчас попробую... мало ли...


Цитата(Talkman @ 05.10.11, 10:51) необходимо зарегистрироваться для просмотра ссылки
На сколько я помню в 1С не обязательно создавать объект ФС. Он присутствует по умолчанию. Но сейчас попробую... мало ли...



Фс = СоздатьОбъект("ФС");
{F:\BASE\POLYKOR_SQL\EXTFORMS\IPAQ\ПРОБААГЕНТ - КОПИЯ.ERT(854)}: Попытка присвоить значение недоступной для записи переменной (ФС)


О чем я и говорил sad.gif
Flexy
тьфу
ФС зарезервированный объект.И его нельзя юзать как перменную.
Пардонтье.
От так попробуйте:
ФайлСистем = СоздатьОбъект("ФС");
Talkman
Цитата(Flexy @ 05.10.11, 10:58) необходимо зарегистрироваться для просмотра ссылки
тьфу
ФС зарезервированный объект.И его нельзя юзать как перменную.
Пардонтье.
От так попробуйте:
ФайлСистем = СоздатьОбъект("ФС");

Я, конечно, дико извиняюсь, но зачем инициализировать еще один обїект ФС, если уже присутствует объект ФС по умолчанию. Я понимаю, что семерка глючная в некоторых моментах, но не на столько же...



crazy.gif Умом семерку не понять... Перестало вылетать.... О_о...
Flexy
Цитата(Talkman @ 05.10.11, 10:11) необходимо зарегистрироваться для просмотра ссылки
crazy.gif Умом семерку не понять... Перестало вылетать.... О_о...

Стихами говорите smile.gif
Вот и чудненько wink.gif
Talkman
Цитата(Flexy @ 05.10.11, 11:41) необходимо зарегистрироваться для просмотра ссылки
Стихами говорите smile.gif
Вот и чудненько wink.gif

Благодарим-с.
Для просмотра полной версии этой страницы, пожалуйста, пройдите по ссылке.