Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Очень популярная тема (более 25 ответов) Крах 1С при попытки выполнения запроса (число прочтений - 6202 )
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Крах 1С при попытки выполнения запроса
22. Февраля 2017 :: 12:53
Печать  
Помогите, уже голову сломал.
1С 7.7, Server 2008 SP 2

Есть справочник "товары". Есть форма списка "Для Выбора". При открытии оной быстрым запросом получаю остатки товаров на складах.

Если форма вызывается из документов - все работает. Попытка вызвать форму методом Справочник.Выбрать() вызывает крах системы. Куда хоть копать то?

Выбивает именно команда "ВыполнитьИнструкцию"
  
Наверх
 
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #1 - 23. Февраля 2017 :: 09:02
Печать  
Апдейт информации. система рушится при попытке выполнения любого запроса 1с++ если форма вызвана через "Справочник.Выбрать()". Если через "ОткрытьФорму" - тоже не работает.....
  
Наверх
 
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #2 - 23. Февраля 2017 :: 10:19
Печать  
даже если прикрутить открытие формы промежуточной обработки у которой есть просто поле "справочник" для выбора - падает при открытии формы выбора элемента.....

Даже если на кнопку формы прицепить выбор из справочника - падает... зараза.......
  
Наверх
 
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 631
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #3 - 23. Февраля 2017 :: 11:28
Печать  
dbf, sql, саму обработку бы выложил...

- параметры в обработку передаешь с ТекущийЭлемент/ТекущийДокумент? проверь, может проблема в этом.
- попробуй проверить не виноват ли запрос - замени его на настолько простой насколько возможно, лучше к справочнику валюты.
- попробуй выполнитьинструкцию вывесить на кнопку формы и проверить вылетит ли.
- выгружаешь в тз? а если через промежуточную тз?

  
Наверх
www  
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #4 - 23. Февраля 2017 :: 12:14
Печать  
Djelf писал(а) 23. Февраля 2017 :: 11:28:
dbf, sql, саму обработку бы выложил...

- параметры в обработку передаешь с ТекущийЭлемент/ТекущийДокумент? проверь, может проблема в этом.
- попробуй проверить не виноват ли запрос - замени его на настолько простой насколько возможно, лучше к справочнику валюты.
- попробуй выполнитьинструкцию вывесить на кнопку формы и проверить вылетит ли.
- выгружаешь в тз? а если через промежуточную тз?




база dbf

задача подробно - есть форма, на ней ТЗ. из двух колонок. Одна из колонок - Справочник.Номенклатура. При двойной клике должна открываться форма для выбора товара из справочника. При открытии формы списка справочника 1С валится. Валится на запросе к остаткам. Если я отключаю запрос по остаткам - форма открывается. Но на форме есть еще фильтры по полям справочника (текст обработки фильтров ниже). При попытке их использовать - опять вылет...

Вылетает самый простой запрос. Например

Текст="SELECT
           |code AS Код,
           |id AS [Товар $Справочник.Номенклатура],
           |ParentID as Parent
           |FROM $Справочник.Номенклатура as Спр WHERE IsFolder=2  AND IsMark=''";
           Если СписокГрупп.ТекущаяСтрока()>1 Тогда
                 ТекГруппа=СписокГрупп.ПолучитьЗначение(СписокГрупп.ТекущаяСтрока()); 
                 ТекГруппа=_IdToStr(Лев(Прав(ЗначениеВСтрокуВнутр(ТекГруппа),15),13));
                 Текст=Текст+"
                 |AND ParentID='"+ТекГруппа+"'";
           КонецЕсли;            
           Если СокрЛП(РазбиваемаяСтрокаПоИмени)<>"" Тогда
                 Для Ном=1 По СтрКоличествоСтрок(РазбиваемаяСтрокаПоИмени) Цикл
                       Слово=СтрПолучитьСтроку(РазбиваемаяСтрокаПоИмени,Ном);
                       Если ПустоеЗначение(Слово)=0 Тогда
                             Текст=Текст+"
                             |AND LOWER(descr) LIKE '"+Слово+"'";
                       КонецЕсли;
                 КонецЦикла; 
           КонецЕсли;   
           Если СокрЛП(РазбиваемаяСтрокаПоАртикулу)<>"" Тогда
                 Для Ном=1 По СтрКоличествоСтрок(РазбиваемаяСтрокаПоАртикулу) Цикл
                       Слово=СтрПолучитьСтроку(РазбиваемаяСтрокаПоАртикулу,Ном);
                       Если ПустоеЗначение(Слово)=0 Тогда
                             Текст=Текст+"
                             |AND LOWER($Спр.Артикул) LIKE '"+Слово+"'";
                       КонецЕсли;
                 КонецЦикла; 
           КонецЕсли;   
           Если ПустоеЗначение(СтрокаФильтраПоВиду)=0 Тогда
                 Текст=Текст+"
                 |AND ($Спр.ВидТовара=:Усл_1)";
                 БыстрыйЗапрос.УстановитьТекстовыйПараметр("Усл_1",СтрокаФильтраПоВиду);
           КонецЕсли;      
           Если ПустоеЗначение(СтрокаФильтраПоТипу)=0 Тогда
                 Текст=Текст+"
                 |AND ($Спр.ТипТовара=:Усл_2)";
                 БыстрыйЗапрос.УстановитьТекстовыйПараметр("Усл_2",СтрокаФильтраПоТипу);
           КонецЕсли;
           Попытка 
                 //БыстрыйЗапрос.Отладка(1);
                 ТЗРезультата=БыстрыйЗапрос.ВыполнитьИнструкцию(Текст);
           Исключение
                 Сообщить(ОписаниеОшибки());
           КонецПопытки;
  
Наверх
 
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 631
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #5 - 23. Февраля 2017 :: 12:59
Печать  
Ничего подозрительного.
А если БыстрыйЗапрос переинициализировать перед выполнением?
ТЗРезультата случаем не форме?

Драйвер фокса обновлял? В 2008r2 по-умолчанию стоит версия 9.0.00.2412, а последняя  9.0.00.5815 https://www.microsoft.com/en-us/download/details.aspx?id=14839
  
Наверх
www  
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #6 - 23. Февраля 2017 :: 14:17
Печать  
Djelf писал(а) 23. Февраля 2017 :: 12:59:
Ничего подозрительного.
А если БыстрыйЗапрос переинициализировать перед выполнением?
ТЗРезультата случаем не форме?

Драйвер фокса обновлял? В 2008r2 по-умолчанию стоит версия 9.0.00.2412, а последняя  9.0.00.5815 https://www.microsoft.com/en-us/download/details.aspx?id=14839



Да конечно ничего там нет. я уже года четыре во всех конфы всех клиентов вставляю получение остатков, фильтры по справочникам и некоторые громоздкие отчеты на 1с++. Никогда вопросов небыло никаких. А тут уперся...

Нет. ТЗ_Результата просто ТЗ в памяти. в неё высыпается запрос. Да и не доходит до ТЗ. сыпется на "ВыполнитьИнструкцию"

драйвер фокса обновить попробую. У меня явно тсроват. Может 1cpp тоже обновить? какая нынче актуальная версия?

Самое интересное - в документах при выборе в ТЧ товара штатными средствами - все работает. При вызове формы справочника из другой формы списка - работает. Проблема только в случаи использования ТЗ на вызывающей форме. Почему - я не знаю.
  
Наверх
 
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 631
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #7 - 23. Февраля 2017 :: 14:46
Печать  
Стрелок писал(а) 23. Февраля 2017 :: 14:17:
драйвер фокса обновить попробую. У меня явно тсроват. Может 1cpp тоже обновить? какая нынче актуальная версия?

да, возможно в той базе что-то не то цепляется, или что-то лишнее из вк загружено.
1cpp 3.2.4.3 http://www.1cpp.ru/forum/YaBB.pl?num=1332077808/6#6
formex 2.0.5.124

  
Наверх
www  
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #8 - 23. Февраля 2017 :: 15:27
Печать  
Djelf писал(а) 23. Февраля 2017 :: 14:46:
Стрелок писал(а) 23. Февраля 2017 :: 14:17:
драйвер фокса обновить попробую. У меня явно тсроват. Может 1cpp тоже обновить? какая нынче актуальная версия?

да, возможно в той базе что-то не то цепляется, или что-то лишнее из вк загружено.
1cpp 3.2.4.3 http://www.1cpp.ru/forum/YaBB.pl?num=1332077808/6#6
formex 2.0.5.124



Спасибо но я так и не понимаю - почему в документах работает а в формах с ТЗ - нет. Я уже просто создал новую форму и поместил ТЗ из одной колонки на неё. Три процедуры в модуле. Ничего лишнего. Валится.... заказчик негодует.... Причем даже промежуточная форма с реквизитом типа "Справочник.Номенклатура" не помогает - валится сссссууууукккк...

уже и с правами поигрался.... до одного места. Уже и фильтры по справочнику сократил только до фильтра по названию... валится.... Все стандартное и давно откатанное кроме операционки Все-таки клиенты предпочитают работать на 2003 SP2 надежном и проверенном... Но тут было без вариантов - сервер брендованый "хьюлет" туды его в качель
  
Наверх
 
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 631
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #9 - 23. Февраля 2017 :: 15:45
Печать  
Можешь тест сделать? Парочка серверов на 2008r2 у меня есть на проверить вылетит или нет.
В смысле оставить только этот справочник и какую то форму из которой падает.
Раз негодует и сильно можно по быстрому на 1sqlite перевести. Хотя бы на время, пока не прояснится что происходит.
  
Наверх
www  
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #10 - 23. Февраля 2017 :: 16:05
Печать  
Djelf писал(а) 23. Февраля 2017 :: 15:45:
Можешь тест сделать? Парочка серверов на 2008r2 у меня есть на проверить вылетит или нет.
В смысле оставить только этот справочник и какую то форму из которой падает.
Раз негодует и сильно можно по быстрому на 1sqlite перевести. Хотя бы на время, пока не прояснится что происходит.


могу. только не сейчас. давай на завтра. я сделаю конфу и выложу на файлообменник.

А хотя может и сейчас сделаю  Смех

еще раз убедился - на "хрюшке" все работает
  
Наверх
 
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #11 - 23. Февраля 2017 :: 16:35
Печать  
Вот конфа

http://rgho.st/7rVlp7LFJ

В ней два справочника (Товары и Склады), один регистр (ОстаткиТоваров) и одна обработка. Проблема при двойном клике мышкой по колонке ТЗ в обработке. На "хрюшке" все работает.
  
Наверх
 
IP записан
 
Djelf
God Member
*****
Отсутствует


Ubuntu + wine@etersoft
+ 1C 7.7

Сообщений: 631
Местоположение: Питер
Зарегистрирован: 02. Ноября 2007
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #12 - 23. Февраля 2017 :: 19:20
Печать  
Загрузил. Проверил. У меня на 2008r2 не падает. Фильтр работает.

ВК очень древние. Лучше бы обновить.
Используемые ВК регистрируются в реестре, поэтому не факт что грузятся именно те что указаны. Можно попробовать разрегистрировать и зарегистрировать заново, но лучше обновить - не нужна регистрациия в реестре, и большое количество вкусностей, и исправлений!
Вроде сломаться ничего не должно, я и с более старых версий переводил, пара косяков в паре классов выскочила, но это ерунда.

Порядок загрузки ВК тоже не верный. Сначала нужно грузить 1cpp, потом formex, потом все остальное, необходимость vk_sleep_1C под сомнением. При тестировании порядок не менял.

Опций совместности не установлено, dep включен. фокс из коробки  9.0.00.2412
  
Наверх
www  
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #13 - 24. Февраля 2017 :: 09:30
Печать  
Djelf писал(а) 23. Февраля 2017 :: 19:20:
Загрузил. Проверил. У меня на 2008r2 не падает. Фильтр работает.

ВК очень древние. Лучше бы обновить.
Используемые ВК регистрируются в реестре, поэтому не факт что грузятся именно те что указаны. Можно попробовать разрегистрировать и зарегистрировать заново, но лучше обновить - не нужна регистрациия в реестре, и большое количество вкусностей, и исправлений!
Вроде сломаться ничего не должно, я и с более старых версий переводил, пара косяков в паре классов выскочила, но это ерунда.

Порядок загрузки ВК тоже не верный. Сначала нужно грузить 1cpp, потом formex, потом все остальное, необходимость vk_sleep_1C под сомнением. При тестировании порядок не менял.

Опций совместности не установлено, dep включен. фокс из коробки  9.0.00.2412


Тогда я вообще ничего не понимаю. Порядок конечно поменяю. Конфа новая, писалась с нуля и ставилась на чистый сервер. Порядок поменяю. dll обновлю. "слип" нужен для обхода блокировок транзакций при проведении документов.

А при открытии формы выбора из справочника запрос по остаткам тоже срабатывает без проблем?

ЗЫ. Где то бы еще найти аналог старой документашки по использованию 1с++ (типа древнего "Эффективное использование MSSQL при помощи ВК 1С") так чтобы с примерами....
  
Наверх
 
IP записан
 
Стрелок
Full Member
***
Отсутствует


I Love YaBB 2!

Сообщений: 134
Местоположение: Ukrane
Зарегистрирован: 31. Октября 2008
Пол: Мужской
Re: Крах 1С при попытки выполнения запроса
Ответ #14 - 24. Февраля 2017 :: 09:37
Печать  
Скопировал полностью глобальник из "боевой" базы в тестовую - работает. на боевой - не работает..... бл
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать