|   |   | 
| 
 | Ограничение на работу фоновых задач на Постгри SQL | ☑ | ||
|---|---|---|---|---|
| 0
    
        K1RSAN 10.05.23✎ 12:52 | 
        В общем такая проблема, в серверной базе УТ обработка работает секунду и прекращается, в файловом режиме - отрабатывает полный срок. Выполнена в виде внешнего отчета-обработки с запуском в фоновом режиме. Даже вручную когда открываю форму обработки и запускаю запрос - он прерывается спустя секунду-две.     | |||
| 1
    
        АНДР 10.05.23✎ 12:59 | 
        Продолжайте наблюдения!     | |||
| 2
    
        K1RSAN 10.05.23✎ 13:00 | 
        (1) Гений, вы?)     | |||
| 3
    
        K1RSAN 10.05.23✎ 13:04 | 
        В Администрировании 1С ограничений на запуск фоновых задач нет. Вот и думаю, мне админов пинать, что-то намудрили в настройках постгри или ещё где может быть загвоздка?     | |||
| 4
    
        АНДР 10.05.23✎ 13:06 | 
        Через Консоль запросов этот запрос выполнял с такими же параметрами?     | |||
| 5
    
        K1RSAN 10.05.23✎ 13:09 | 
        (4) Да. Консоль показывает адекватные результаты, в обработке как будто идет сбрасывание по времени.
 Потом копию базы раскрутил в файловом варианте - открыл ту же обработку - показывает адекватные результаты. | |||
| 6
    
        Hmster 10.05.23✎ 13:13 | 
        А что показывает журнал регистрации, и что консоль фоновых?     | |||
| 7
    
        PLUT гуру 10.05.23✎ 13:13 | 
        (5) в качестве бреда: добавь в свою обормотку-отчет в нужных местах ВызватьИсключение бла-бла-бла с отладочной информацЫей - ну там кол-во записей запроса/время начала/кончала... если с отладкой возиться лень.
 по журналу можно потом ашипки глянуть | |||
| 8
    
        K1RSAN 10.05.23✎ 13:19 | 
        (6) 
 Журнал регистрации Фоновое задание. Запуск Дополнительные отчеты и обработки: Выполнение серверного метода обработки Дополнительные отчеты и обработки Подключение, БезопасныйРежим = "Нет". Фоновое задание. Успешное завершение Журнал фоновых Дополнительные отчеты и обработки: Выполнение серверного метода обработки Задание выполнено | |||
| 9
    
        K1RSAN 10.05.23✎ 13:20 | 
        (7)
 В результате запроса разное количество записей на серверной базе и в клиентской при одинаковых параметрах запроса. | |||
| 10
    
        Прапорщик 10.05.23✎ 13:22 | 
        (0) Что означает "запрос - он прерывается"?
 Как это выглядит? Возвращается пустой результат запроса? Возвращается результат, но он неверный? Вызывается исключение? Если проблема с запросом, где его текст? Вангую. Проблемы с параметрами запроса. Если отладка выключена, воспользуйтесь методом (7) и добавьте вывод разной отладочной информации в ЖР. | |||
| 11
    
        K1RSAN 10.05.23✎ 13:24 | 
        (10) В файловой и серверной базе запрос возвращает разное количество строк при одинаковых параметрах.
 При этом в консоли запросов результаты запросов идентичны. | |||
| 12
    
        АНДР 10.05.23✎ 13:26 | 
        (9), (11) При таких вводных надо исходные данные на соответствие параметрам проверять...     | |||
| 13
    
        Hmster 10.05.23✎ 13:32 | 
        (11) параметры запроса сохрани в ЖР при выполнении, потом проверяй     | |||
| 14
    
        K1RSAN 10.05.23✎ 13:47 | 
        (12) Запрос берет текущие остатки по складам на текущую дату, цены (2 вида цен забиты железно), доп. реквизит склада (прибит железно) для соответствия складов с сайтом.
 по факту все параметры, кроме даты, забиты внутри и не меняются. В отладчике параметры показывает верно. | |||
| 15
    
        Garykom гуру 10.05.23✎ 13:51 | 
        Покажи код
 И возможно твое фоновое чем то другим прибивается | |||
| 16
    
        Garykom гуру 10.05.23✎ 13:53 | 
        Проверь делая короткие запросы внутри фонового в цикле
 Проверь "Проблемные процессы завершать через:" по умолчанию там 60 секунд Возможно почему то срабатывает при долгом запросе к СУБД | |||
| 17
    
        Garykom гуру 10.05.23✎ 13:55 | 
        На крайняк возьми 8.3.23 и подними отдельный с сервер 1С с postgresql и mssql на другом компе
 Проверь свою базу и обработку | |||
| 18
    
        Garykom гуру 10.05.23✎ 13:55 | 
        (17)+ 8.3.23 потому что комьюнити лицензии появились     | |||
| 19
    
        K1RSAN 10.05.23✎ 13:57 | 
        Запрос = Новый Запрос;
 Запрос.УстановитьПараметр("КонецПериода", КонецДня(ТекущаяДата())); Запрос.УстановитьПараметр("СвойствоНомер", "НомерДляСайта"); Запрос.Текст = "ВЫБРАТЬ | ТоварыНаСкладахОстатки.Номенклатура КАК Номенклатура, | ТоварыНаСкладахОстатки.Склад КАК Склад, | ТоварыНаСкладахОстатки.ВНаличииОстаток КАК ВНаличииОстаток, | ТоварыНаСкладахОстатки.Номенклатура.ЕдиницаИзмерения КАК НоменклатураЕдиницаИзмерения, | ТоварыНаСкладахОстатки.Номенклатура.Родитель КАК НоменклатураРодитель, | ТоварыНаСкладахОстатки.Номенклатура.Артикул КАК НоменклатураАртикул, | СкладыДополнительныеРеквизиты.Значение КАК НомерДляСайта |ПОМЕСТИТЬ ВТ_Остатки |ИЗ | РегистрНакопления.ТоварыНаСкладах.Остатки(, ) КАК ТоварыНаСкладахОстатки | ЛЕВОЕ СОЕДИНЕНИЕ Справочник.Склады.ДополнительныеРеквизиты КАК СкладыДополнительныеРеквизиты | ПО ТоварыНаСкладахОстатки.Склад = СкладыДополнительныеРеквизиты.Ссылка | И (СкладыДополнительныеРеквизиты.Свойство.Имя = &СвойствоНомер) |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ЦеныНоменклатурыСрезПоследних.Цена КАК Цена, | ЦеныНоменклатурыСрезПоследних.ВидЦены КАК ВидЦены, | ЦеныНоменклатурыСрезПоследних.Номенклатура КАК Номенклатура |ПОМЕСТИТЬ ВТ_Цены |ИЗ | РегистрСведений.ЦеныНоменклатуры.СрезПоследних КАК ЦеныНоменклатурыСрезПоследних |ГДЕ | ЦеныНоменклатурыСрезПоследних.ВидЦены В(&ВидЦены) |; | |//////////////////////////////////////////////////////////////////////////////// |ВЫБРАТЬ | ВТ_Остатки.Номенклатура КАК Номенклатура, | ВТ_Остатки.Склад КАК Склад, | ВТ_Остатки.ВНаличииОстаток КАК ВНаличииОстаток, | ВТ_Остатки.НоменклатураЕдиницаИзмерения КАК НоменклатураЕдиницаИзмерения, | ВТ_Остатки.НоменклатураРодитель КАК НоменклатураРодитель, | ВТ_Остатки.НоменклатураАртикул КАК НоменклатураАртикул, | ВТ_Цены.Цена КАК Цена, | ВТ_Цены.ВидЦены КАК ВидЦены, | ЕСТЬNULL(ВТ_Остатки.НомерДляСайта, 0) КАК НомерДляСайта |ИЗ | ВТ_Цены КАК ВТ_Цены | ВНУТРЕННЕЕ СОЕДИНЕНИЕ ВТ_Остатки КАК ВТ_Остатки | ПО (ВТ_Остатки.Номенклатура = ВТ_Цены.Номенклатура) |ГДЕ | ВТ_Цены.Цена > 0 | И ВТ_Остатки.НомерДляСайта > 0 | |УПОРЯДОЧИТЬ ПО | Склад"; ОтборПоВидуЦен = Новый Массив; ОтборПоВидуЦен.Добавить(Справочники.ВидыЦен.НайтиПоКоду("0000000001")); ОтборПоВидуЦен.Добавить(Справочники.ВидыЦен.НайтиПоКоду("0000000002")); Запрос.УстановитьПараметр("ВидЦены", ОтборПоВидуЦен); Результат = Запрос.Выполнить(); Выборка = Результат.Выбрать(); ТабЗнач = ЭтотОбъект.Данные; ТабЗнач.Очистить(); Пока Выборка.Следующий() Цикл Стр = ТабЗнач.Добавить(); Стр.ДляВыгрузки = Истина; Стр.Номенклатура = Выборка.Номенклатура; Стр.ЕдиницаИзмерения = Выборка.НоменклатураЕдиницаИзмерения; Стр.Склад = Выборка.Склад; Стр.Родитель = Выборка.НоменклатураРодитель; Стр.ВидыЦен = Выборка.ВидЦены; Стр.Цена = Выборка.Цена; Стр.НомерСкладаДляСайта = Выборка.НомерДляСайта; Если Выборка.НоменклатураАртикул = "" Тогда Стр.НоменклатураАртикул = "*"; Иначе Стр.НоменклатураАртикул = Выборка.НоменклатураАртикул; КонецЕсли; Стр.КоличествоОстаток = Выборка.ВНаличииОстаток; КонецЦикла; Это всё записывается в ТЧ Потом в цикле обходятся результаты запроса и записываются в XML - этот код обрабатывается корректно, файлы сохраняются и потом выгружаются на ftp. Но только количество элементов в разы меньше, чем должно быть. Получается как будто при выполнении запроса сбрасывается и в выборку падает только 99-100 строк. | |||
| 20
    
        K1RSAN 10.05.23✎ 13:59 | 
        (16) у меня нет доступа к настройкам постгри, сам я его не настраивал, только MS SQL слегка ковырял, так что не знаю, какие там настройки вообще.     | |||
| 21
    
        Garykom гуру 10.05.23✎ 14:03 | 
        (20) дело не в настройках постгре а скорее сервера 1С     | |||
| 22
    
        sandal_r 10.05.23✎ 14:04 | 
        1. у вас в запросе не используется параметр "КонецПериода"
 2. проверьте права пользователя, под которым выполняется фоновое задание. возможно у него не хватает прав | |||
| 23
    
        sandal_r 10.05.23✎ 14:06 | 
        3. используйте параметры виртуальных таблиц
 4. возможно в фоновом задании таблицы "Объект.Данные". Выгружайте в новую переменную 5. не используйте выборку, сразу выгружайте готовую таблицу. | |||
| 24
    
        Garykom гуру 10.05.23✎ 14:08 | 
        (23) только хотел про ТабЗнач = ЭтотОбъект.Данные; ху из написать     | |||
| 25
    
        Garykom гуру 10.05.23✎ 14:08 | 
        |    И ВТ_Остатки.НомерДляСайта > 0
 очень интересное условие, особенно если тип строка | |||
| 26
    
        K1RSAN 10.05.23✎ 14:09 | 
        (22) 
 1. Видимо случайно оборвалось 2. Выполняется с админскими правами. Если бы прав не хватало - вообще не формировался бы запрос, а не выгружалось бы первые 100 строк. 3. там должен быть параметр таблицы даты и всё. Проверю этот момент 4. Данные - ТЧ обработки. Думал так будет надежнее 5. Ок, попробую. | |||
| 27
    
        K1RSAN 10.05.23✎ 14:10 | 
        (25) тип число     | |||
| 28
    
        АНДР 10.05.23✎ 14:15 | 
        RLS используется?     | |||
| 29
    
        K1RSAN 10.05.23✎ 14:15 | 
        (28) Да     | |||
| 30
    
        АНДР 10.05.23✎ 14:17 | 
        При запуске в режиме отладки какой результат?     | |||
| 31
    
        K1RSAN 10.05.23✎ 14:17 | 
        (30) Всё проходит, но количество записей в разы меньше, чем при запуске отладки в файловом варианте     | |||
| 32
    
        АНДР 10.05.23✎ 14:22 | 
        (31) Мы точно говорим про одно и то же?
 1С:Предприятие параметр запуска "РежимОтладки". | |||
| 33
    
        Галахад гуру 10.05.23✎ 14:29 | 
        У пользователя есть права на склады?     | |||
| 34
    
        PLUT гуру 10.05.23✎ 14:34 | 
        в настройках регл.заданий (фоновых) можно указать имя пользователя (имеет смысл только для серверной информацЫонной базы), под которым будет запускаться фоновое     | |||
| 35
    
        K1RSAN 10.05.23✎ 14:34 | 
        (33) да есть. как минимум потому, что часть строк же выгружается. Без прав был бы кукиш.     | |||
| 36
    
        sandal_r 10.05.23✎ 17:48 | 
        ну шо, таки права?     | |||
| 37
    
        Hmster 10.05.23✎ 22:39 | 
        ну или права, поэтому только кусок данных или параметры не так заполняются в фоновом     | |||
| 38
    
        dmt 11.05.23✎ 08:19 | 
        в запросе нет РАЗРЕШЕННЫЕ, значит при проблеме с правами должно выпадать исключение
 (0) включи ТЖ, посмотри на текст запроса | 
 
 | Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |