алгоритм ТХО АПИ на SQL
Модераторы: m0p3e, edward_K, Модераторы
алгоритм ТХО АПИ на SQL
Предлагется принципиально другой подход к разработке алгоритмов ТХО АПИ. Подход заключается в возможности написания запроса непосредственно в шаблоне проводки ТХО без какой-либо дополнительной компиляции ресурса.
Достоинства:
- Быстродействие на этапе выборки до 10 раз
- удобство и быстрота настройки шаблонов, без использования дополнительных идентификаторов
- гораздо большая визульная наглядность алгоритмов формирования проводок
- возможность проверки правильности запроса через sql-developer
- возможность использования абсолютно всех возможностей SQL (в том числе вложенные запросы, вызов хранимых процедур и др)
- совместимость со стандартными алгоритмами ТХО
- возможность использования внешних таблиц, не входящих в словарь базы данных системы "Галактика"
простейший пример:
По накладной на приход МЦ необходимо сформировать проводки в корреспонденции 10/60 по каждой МЦ на сумму без налогов
В шаблоне ТХО указывается счета корреспонденции: дебет - 10, кредит - 60
В мемо-поле шаблона заносится запрос:
select spsopr.f$price*spsopr.f$kolfact as f0
, 0 as f1
, dbo.toInt64(katmc.f$cgroupmc) as d1
, dbo.toInt64(katmc.f$nrec) as d2
, dbo.toInt64(katsopr.f$cpodrto) as d3
, '0' as d4
, '0' as d5
, '0' as d6
, '0' as k1
, dbo.toInt64(katsopr.f$corg) as k2
, dbo.toInt64(katsopr.f$cdogovor) as k3
, '0' as k4
, '0' as k5
, '0' as k6
from t$katmc katmc, t$katsopr katsopr, t$spsopr spsopr
where buf.cSoprDoc=katsopr.f$nrec
and katsopr.f$nrec=spsopr.f$csopr
and spsopr.f$cmcusl=katmc.f$nrec
где f0 – сумма в разрезе аналитики в НДЕ
, f1 – сумма в разрезе аналитики в Вал.
,d1 – Аналитика 1-го уровня по дебету
,d2 – Аналитика 2-го уровня по дебету
,d3 – Аналитика 3-го уровня по дебету
,d4 – Аналитика 4-го уровня по дебету
,d5 – Аналитика 5-го уровня по дебету
,d6 – Аналитика 6-го уровня по дебету
,k1 – Аналитика 1-го уровня по дебету
,k2 – Аналитика 2-го уровня по кредиту
,k3 – Аналитика 3-го уровня по кредиту
,k4 – Аналитика 4-го уровня по кредиту
,k5 – Аналитика 5-го уровня по кредиту
,k6 – Аналитика 6-го уровня по кредиту
Механизму ТХО АПИ передается сумма и нреки аналитик из запроса, проводки формируются стандартным функционалом
Пример приведен простейший, думаю владеющие синтаксисом SQL могут творчески подойти к возможностям данной разработки
Если у кого есть заинтересованность - пишите:)
Алгоритм работает как под ОРАКЛ, так и под MSSQLServer
Достоинства:
- Быстродействие на этапе выборки до 10 раз
- удобство и быстрота настройки шаблонов, без использования дополнительных идентификаторов
- гораздо большая визульная наглядность алгоритмов формирования проводок
- возможность проверки правильности запроса через sql-developer
- возможность использования абсолютно всех возможностей SQL (в том числе вложенные запросы, вызов хранимых процедур и др)
- совместимость со стандартными алгоритмами ТХО
- возможность использования внешних таблиц, не входящих в словарь базы данных системы "Галактика"
простейший пример:
По накладной на приход МЦ необходимо сформировать проводки в корреспонденции 10/60 по каждой МЦ на сумму без налогов
В шаблоне ТХО указывается счета корреспонденции: дебет - 10, кредит - 60
В мемо-поле шаблона заносится запрос:
select spsopr.f$price*spsopr.f$kolfact as f0
, 0 as f1
, dbo.toInt64(katmc.f$cgroupmc) as d1
, dbo.toInt64(katmc.f$nrec) as d2
, dbo.toInt64(katsopr.f$cpodrto) as d3
, '0' as d4
, '0' as d5
, '0' as d6
, '0' as k1
, dbo.toInt64(katsopr.f$corg) as k2
, dbo.toInt64(katsopr.f$cdogovor) as k3
, '0' as k4
, '0' as k5
, '0' as k6
from t$katmc katmc, t$katsopr katsopr, t$spsopr spsopr
where buf.cSoprDoc=katsopr.f$nrec
and katsopr.f$nrec=spsopr.f$csopr
and spsopr.f$cmcusl=katmc.f$nrec
где f0 – сумма в разрезе аналитики в НДЕ
, f1 – сумма в разрезе аналитики в Вал.
,d1 – Аналитика 1-го уровня по дебету
,d2 – Аналитика 2-го уровня по дебету
,d3 – Аналитика 3-го уровня по дебету
,d4 – Аналитика 4-го уровня по дебету
,d5 – Аналитика 5-го уровня по дебету
,d6 – Аналитика 6-го уровня по дебету
,k1 – Аналитика 1-го уровня по дебету
,k2 – Аналитика 2-го уровня по кредиту
,k3 – Аналитика 3-го уровня по кредиту
,k4 – Аналитика 4-го уровня по кредиту
,k5 – Аналитика 5-го уровня по кредиту
,k6 – Аналитика 6-го уровня по кредиту
Механизму ТХО АПИ передается сумма и нреки аналитик из запроса, проводки формируются стандартным функционалом
Пример приведен простейший, думаю владеющие синтаксисом SQL могут творчески подойти к возможностям данной разработки
Если у кого есть заинтересованность - пишите:)
Алгоритм работает как под ОРАКЛ, так и под MSSQLServer
-
- Постоянный гость
- Сообщения: 82
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Москва, Минск
- Контактная информация:
Re: алгоритм ТХО АПИ на SQL
Штука интересная, а можно более подробно сюда или в личку? Интересно пошаговое описание, примерчик, как это можно пощупать самому?
-
- Местный житель
- Сообщения: 2896
- Зарегистрирован: 24 июн 2005, 12:12
- Откуда: Иркутская область
Re: алгоритм ТХО АПИ на SQL
зачем в личку? тема для чего создавалась? давайте тут обсуждать.
я так понял, это пока в планах? или разрабатывается но нет пока в общем доступе.
я так понял, это пока в планах? или разрабатывается но нет пока в общем доступе.
Re: алгоритм ТХО АПИ на SQL
Всё сделано уже. Подробное описание не могу на сайте выложить - там с картинками и примерами. А файл прицепить вроде как нельзя
-
- Местный житель
- Сообщения: 2896
- Зарегистрирован: 24 июн 2005, 12:12
- Откуда: Иркутская область
Re: алгоритм ТХО АПИ на SQL
так в чем дело? в каком релизе это выйдет? или это будет как платная доработка за доп. плату? если да - вряд ли будет пользоваться спросом. работодателю проще нагнуть программера на старом функционале - чем платить за доп. фишки имхо
Re: алгоритм ТХО АПИ на SQL
По скорости и простоте настройки демонстрировал заказчикам - впечатляет на самом деле. И еще наглядность и понятность для людей не совсем владеющих випом.
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: алгоритм ТХО АПИ на SQL
В принципе идея то хорошая и простая - видать апиха разбирает мемополе и выполняет прямой запрос к базе, режимы аналитик берет из шаблона и усе - главное чтобы число полей и параметров всегда совпадало.
Еще бы group by и все это в закрытие счетов - там прирост будет вообще существенный.
Можно выложить куда нибудь доку и поместить здесь ссылку
Еще бы group by и все это в закрытие счетов - там прирост будет вообще существенный.
Можно выложить куда нибудь доку и поместить здесь ссылку
-
- Местный житель
- Сообщения: 222
- Зарегистрирован: 04 июн 2008, 14:35
- Откуда: Стерлитамак
- Контактная информация:
Re: алгоритм ТХО АПИ на SQL
Дык прямой запрос к базе подразумевает как раз использование всех возможностей СУБД. Значит есть и group by и другие плюшкиedward_K писал(а): видать апиха разбирает мемополе и выполняет прямой запрос к базе
Еще бы group by
Re: алгоритм ТХО АПИ на SQL
описание выложу, сейчас занят сильно. Думаю в течение дня будет. Какие вопросы может интересуют отрзить дополнительно?
Re: алгоритм ТХО АПИ на SQL
Данная возможность очень интересна. Можно поподробнее об этом?
Описание и тп.
Описание и тп.
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
-
- На пенсии
- Сообщения: 797
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: г. Тюмень
- Контактная информация:
Re: алгоритм ТХО АПИ на SQL
А параметры можно передать запросу, например из ключей?
Жду выхода Вселенная 2.12!
-
- Местный житель
- Сообщения: 552
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Челябинск
- Контактная информация:
Re: алгоритм ТХО АПИ на SQL
И что?? Ждать ли нам обещанного описания?
Re: алгоритм ТХО АПИ на SQL
Вроде как Только забрать текущий документ и ещё пару параметровА параметры можно передать запросу, например из ключей?
Последний раз редактировалось n0where 19 апр 2012, 14:06, всего редактировалось 1 раз.
хороший программист — это человек, который переходя улицу с односторонним движением смотрит в обе стороны
Re: алгоритм ТХО АПИ на SQL
позвольте поинтересоваться откуда такая осведомленность?:)
Re: алгоритм ТХО АПИ на SQL
можно брать и параметры и ключи, только обрабатывать это соответствующе в запросе.