|
Как быстро и ловко пересчитать итоги через Rest / OData? | ☑ | ||
---|---|---|---|---|
0
bolero
09.02.19
✎
22:32
|
Имею следующую функцию:
-- Удаляем без разбора все посчитанные итоги CREATE OR REPLACE FUNCTION pg_temp.truncate_totals() RETURNS VOID AS $$ DECLARE statements CURSOR FOR SELECT table_name FROM information_schema.tables WHERE table_schema = 'public' AND table_name LIKE '_accumrgt%'; BEGIN FOR stmt IN statements LOOP EXECUTE 'TRUNCATE TABLE ' || quote_ident(stmt.table_name) || ' CASCADE;'; END LOOP; END; $$ LANGUAGE plpgsql; SELECT pg_temp.truncate_totals(); Но после ее исполнения приходится руками лезть в все функции - стандартные - Управление итогами. Должна же быть кнопка, чтобы сделать то же самое через REST API? В документации ничего похожего на управление итогами не нашел. Какой у вас есть положительный опыт в этом плане? |
|||
1
Cyberhawk
10.02.19
✎
08:40
|
"приходится руками лезть в все функции - стандартные - Управление итогами" // Ну так в этой обработке вызываются вполне платформенные методы
|
|||
2
bolero
10.02.19
✎
16:40
|
(1) вопрос в том, как этот платформенный метод дернуть через REST / OData.
Исправляет регистры у меня робот, удаляет итоги тоже робот, а для запуска клиента или конфигуратора у него ни графического окружения, ни тонкого клиента или конфигуратора нет. Может, там для запуска обработки чего-то в документации недописали? Пока планирую к какому-нибудь типовому, но неиспользуемому объекту присобачить через расширение довесок к процедуре ПриЗаписи, но это же изврат. |
|||
3
sieben
10.02.19
✎
17:25
|
(2) Так в чем вопрос-то? Как написать на 1С вполне себе такой REST http-сервис и внутри него вызвать методы менеджеров регистров?
|
|||
4
bolero
10.02.19
✎
17:30
|
(3) не любитель велосипеды строить, предпочитаю на готовых кататься
В идеале хотелось бы метод, который потом на нетронутой типовой конфе отработает. |
|||
5
sieben
10.02.19
✎
17:37
|
(4) Есть метод лучше. Просто делегируешь задачу программисту и ждешь результата. Зачем тебе вообще эти ODATA/REST ???
|
|||
6
sieben
10.02.19
✎
17:38
|
... хотя постойте
|
|||
7
Cyberhawk
10.02.19
✎
18:59
|
"Может, там для запуска обработки чего-то в документации недописали?" // Не тупи. Я про какие-то обработки ничего не писал.
|
|||
8
palsergeich
10.02.19
✎
21:05
|
(0) Итоги такая вещь которая из коробки не предпалогает того что туда залезет разработчик.
Максимум можно на какой то интервал выключить их и включить. Ну или руками пересчитать РегистрыНакопления.ИмяРегистра.ПересчитатьИтоги() Odata не предназначен для этого. В HTTP - РегистрыНакопления.ИмяРегистра.ПересчитатьИтоги() пишем руками. |
|||
9
Nyoko
10.02.19
✎
21:47
|
(8) +1
|
|||
10
Cyberhawk
11.02.19
✎
12:52
|
Не забываем, что при сбоях в этих итогах гарантированно помогает, увы, _только_ флажок в ТиИ в конфигураторе
|
|||
11
bolero
12.02.19
✎
13:59
|
(1) (3) (8) Спасибо, сделал HTTP-сервис. Запускается из-под того же пользователя и по тому же адресу, что ворочает данные через odata.
|
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |