Новости для бухгалтера, бухучет, налогообложение, отчетность, ФСБУ, прослеживаемость и маркировка, 1С:Бухгалтерия

Вход или Регистрация

Показывать по 10 20 40 сообщений
Новая тема Ответить
Письмо в техподдержку 1С
[Прочее]

Объект "Запрос" 7.7.

Andy_2C
читатель
офлайн
Дата регистрации: 22.05.2008
Сообщений: 1
Пост №1
 
22.05.2008 13:36

"Поражаюсь над "одарённостью" программистов фирмы 1С:<br>Запрос.Выполнить(ТекстЗапроса);<br>Постоянно приходится переделывать на<br>Пока Запрос.Выполнить(ТекстЗапроса) =0 Цикл<br>КонецЦикла;<br><br>раньше писали:<br>Если Запрос.Выполнить(ТекстЗапроса) =1 Тогда....<br><br>Но и это не работало.<br>Запрос может не выполнятся и по техническим причинам:<br>Перегрузка сервера, сети и т.д. В результате получается при нескольких нажатиях кнопки "Сформировать", абсолютно разные результаты.<br>Пора уже выгнать с 1С гасторбайтеров с Чукотки. Неужели так трудно набрать нормальных специалистов???<br>"

Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20952
Пост №2
 
22.05.2008 14:02

"> Постоянно приходится переделывать на<br>> Пока Запрос.Выполнить(ТекстЗапроса) =0 Цикл<br>> КонецЦикла;<br>Зачем?<br><br>> <br>> раньше писали:<br>> Если Запрос.Выполнить(ТекстЗапроса) =1 Тогда....<br>> <br>> Но и это не работало.<br><br>У меня работает!<br><br>> Запрос может не выполнятся и по техническим причинам:<br>> Перегрузка сервера, сети и т.д. В результате получается при нескольких нажатиях кнопки "Сформировать", абсолютно разные результаты.<br>> Пора уже выгнать с 1С гасторбайтеров с Чукотки. Неужели так трудно набрать нормальных специалистов???<br>> <br><br>Плохому танцору ... Дальше продолжи сам"

программист-ученик
читатель
офлайн
Дата регистрации: 21.05.2008
Сообщений: 11
Пост №3
 
22.05.2008 14:42

удалить изменить ответить <br>1с: предприятие 7.7(для3-х польз.) (7.70.017)<br>Конфигурация Зарплата + Кадры, от 01.07.2001 (7.70.32)<br>Бухгалтерия для бюджетных организаций<br>и можно по подробней типа(1Конфигуратор 2Конфигурация 3Документы 4ежеквартальная премия)<br>алгорит проведения документа<br>даже как заполнить поля этого документа<br> Квартальная премия у алименщиков не начисляется это знаешь<br>

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №4
 
22.05.2008 14:59

"Подтверждаю, что проблема с запросами есть. Стабильно проявляется на MS SQL Server. Именно поэтому даже в некоторых типовых конфигурациях есть конструкции алгоритмов вида:<br><br>ПопытокВыполненияЗапроса = 10;<br>Для Сч = 1 По ПопытокВыполненияЗапроса Цикл<br> Если ЗапросПоСтажу.Выполнить(ТекстЗапроса)=1 Тогда<br> Прервать<br> КонецЕсли;<br>КонецЦикла;<br>Если Сч = ПопытокВыполненияЗапроса + 1 Тогда<br> Сообщить("Не удалось обработать данные о стаже работников!","!");<br> Возврат 0;<br>КонецЕсли;<br><br>(это из Комплексной, в частности)<br>Проблема очень ярко проявилась когда то не то в релизе движка 7.70.017, не то 7.70.019... Тогда и применила 1С такие "решения" на уровне алгоритмов конфигурации. Реально, конечно, проблему надо решать на уровне движка. Эффект проявляется при последовательном непрерывном выполнении нескольких запросов. Причем иногда очень даже стабильно, зависит от загрузки сервера"

Prikum
активный пользователь
офлайн
Дата регистрации: 18.02.2002
Сообщений: 20952
Пост №5
 
22.05.2008 15:11

"У меня таких проблем не было, условие всегда срабатывает, если запрос не выполнилься, то значить есть ошибка! Кстати можно сработать на прерываниях и тогда увидить ошибку почем валиться 1С. Что то типа :<br>Попытка<br><br>Исключение<br><br>КонецПопытки; Или я не так понял?"

Thorvardr
читатель
офлайн
Дата регистрации: 25.02.2005
Сообщений: 3082
Пост №6
 
22.05.2008 15:25

"1С не валится, просто почему то получается Запрос.Выполнить()=0, хотя, запускаешь его тут же еще раз с тем же текстом запроса и там все ок... Нестабильная ошибка, совершенно точно связана с "пинком", полученным от MS SQL Server.<br>Попробуйте для эксперемента написать что то вроде:<br><br>ТекстЗапроса="Номенклатура=Справочник.Номенклатура.ТекущийЭлемент;<br> |Группировка Номенклатура;";<br> <br>Запрос=СоздатьОбъект("Запрос");<br>Успех=0;<br>Ошибка=0;<br>Для i=1 По 100 Цикл<br> Если Запрос.Выполнить(ТекстЗапроса)=1 Тогда<br> Успех=Успех+1;<br> Иначе<br> Ошибка=Ошибка+1;<br> КонецЕсли;<br>КонецЦикла;<br> <br>Сообщить("Успешное выполнение запроса: "+Строка(Успех));<br>Сообщить("Ошибочное выполнение запроса: "+Строка(Ошибка));<br><br>Можете поэксперементировать с текстами запроса посложнее, проблема должна проявиться."

Показывать по 10 20 40 сообщений

Читают тему:

Быстрый переход
Для технических специалистов
  • Книга жалоб и предложений по работе сайта
  • Для технических специалистов
  • Представление регламентированной отчетности
  • Говорильня
  • Бухгалтерский учет: обсуждаем проекты нормативных актов и рекомендаций по ведению учета от БМЦ
  • Новый порядок применения ККТ (онлайн кассы с передачей сведений в ФНС)
  • Интернет-конференция: Оформление командировок по новым правилам
  • МАРКИРОВКА
  • ЕГАИС
  • Учет, налогообложение, автоматизация