Формирование субсчета(аналитики) в ТХО

ПНР и сопровождение

Модераторы: m0p3e, edward_K, Модераторы

WiRuc
Местный житель
Сообщения: 414
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж

Сообщение WiRuc »

Алексей писал(а): А скажите, что такого вы делаете внешними языками "нормальными" что нельзя сделать на ВИП? И для чего это используется. Хочеться оценить.

А если говорить честно, мне быстрее писать на ВИП. Уже на столько привык. И особой кривизны не замечаю. И интерфейсы галактические - юзеров особо не пугают уже.
Например, у нас очень много накладных на рекламацию (3-4 тысячи в месяц), причем рекламация ведется не по номеру исходной накладной на отгрузку, а по МЦ. Т.е. выбирается МЦ из каталога, сразу показывается в каких накладных на отгрузку и в каком кол-ве эта МЦ фигурировала, сколько уже было возвращено, рассчитывается кол-во, которое еще можно вернуть (по проценту). После ввода возвращенного кол-ва программа сама распределяет введенное кол-во по исходным накладным на отгрузку для поддержания идеологии возвратных накладных в Галактике.
Когда я предложил корпорации реализовать подобный алгоритм в Галактике, то мне ответили, что с помощью ВИПа такое сделать невозможно. Можно, конечно, с помощью нескольких временных таблиц, но тормоза будут ужасающим (пробовал с помощью ARD). Спустя год после моего предложения в Галактике появился новый интерфейс для рекламационных накладных, и хотя он не обеспечивает и половины требуемого функционала, тормозит просто ужасно. Я как-то попробовал на нем сделать возврат от крупного клиента и даже не дождался окончания подготовки интерфейса к работе. ВИП работает построчно, да еще и на клиенте, естественно скорость ужасающе низкая по сравнению с ХП на MSSQL. Нет агрегаций, нет нормальной сортировки (order by external глючит страшно, хотя иногда очень необходим).
Конечно, если использовать ВИП для небольших БД и не отходить от проторенных принципов программирования, то писать на ВИПе можно. Импровизация карается либо тормозами, либо полной неработоспособностью. А какое это программирование - без полета мысли?
WiRuc
Местный житель
Сообщения: 414
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж

Сообщение WiRuc »

ElenaNikolaevna писал(а):WiRuc

Не понятно, если у вас подразделение и Менеджер связаны 1 к 1, то зачем вам второй уровень КАУ (и соответствующие проблемы с ТХО), тем более, что КАУ 2 - пользовательская аналитика (а МОЛ кем/чем занят?)
КАУ2 - излишняя аналитика, избыточная, с точки зрения организации учета.
Может с этого конца подходить???
Сорри, неверно написал. Конечно не 1 к 1, а многие к 1. Т.е. по подразделению можно однозначно определить менеджера, а у каждого менеджера несколько подразделений.
ecasoft
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"

Сообщение ecasoft »

На самом деле на ВИПе и писать много не приходится и сами то программки ТХО АРI обычно не превышают 1 страницы. Никаких проблем ам что-то написать - нет.

На счет - чо можно, а что нельзя написать - зависит исключительно от того, кто пишет.

И еще. Чтобы выполнять программы на ВИПе лицензия на ВИП не нужна. Лицензия нужна лишь в том случае, если Вы хотите сделать ресурсный файл, программы из которого будут затем выполняться в Галактике. Если же Вы хотите, к примеру, что-то модифицировать в БД (теже самые возвратные накладные, к примеру), то Вы можете написать программу не имея лицензии и выполнить ее в среде ВИПа.
Советую, чтобы принять решение о покупке сначало так и сделать. Продемонстрировать пользователям сервис, который обеспечит использование ВИПа (напишите пару нужных утилит по загрузке, пребразованию данных БД, отчеты на ВИПе и выполните их в среде), а если понравится всем, то покупайте ВИП.
WiRuc
Местный житель
Сообщения: 414
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж

Сообщение WiRuc »

ecasoft писал(а):На самом деле на ВИПе и писать много не приходится и сами то программки ТХО АРI обычно не превышают 1 страницы. Никаких проблем ам что-то написать - нет.
Бесспорно, для написания на ТХО API ВИП мне бы сейчас пригодился.
И, есстественно, нет никаких проблем с его использованием в данной области.
ecasoft писал(а): На счет - чо можно, а что нельзя написать - зависит исключительно от того, кто пишет.
Вот тут вы неправы. Написать то можно, только кто на этом будет работать, если тормозит ужасно. А без тормозов не сделаешь - идеология ВИПа не позволяет. Поверьте я прекрасно представляю о чем говорю, т.к. и на ВИПе писал и на куче других языков. У ВИПа есть как достоинства (многоплатформенность), так и недостатки (скорость работы на больших БД).
ecasoft писал(а): И еще. Чтобы выполнять программы на ВИПе лицензия на ВИП не нужна. Лицензия нужна лишь в том случае, если Вы хотите сделать ресурсный файл, программы из которого будут затем выполняться в Галактике. Если же Вы хотите, к примеру, что-то модифицировать в БД (теже самые возвратные накладные, к примеру), то Вы можете написать программу не имея лицензии и выполнить ее в среде ВИПа.
Советую, чтобы принять решение о покупке сначало так и сделать. Продемонстрировать пользователям сервис, который обеспечит использование ВИПа (напишите пару нужных утилит по загрузке, пребразованию данных БД, отчеты на ВИПе и выполните их в среде), а если понравится всем, то покупайте ВИП.
Я уже говорил, что часть функционала реализована с помощью ARD отчетов, так что пользователи представляют, что это такое. А то что на ВИПе нормально сделать нельзя, реализовано в отдельной программе. Мы таким образом уже 2 года работаем, все счаствливы :-)
ecasoft
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"

Сообщение ecasoft »

Мы не используем ничего, кроме ВИПа для доработок Галактики и не помню, чтобы что-то не сделали. Я не сталкивался с тормазами. Мы работали на десятках предприятий, некоторые из которых являются крупнейшими предприятиями России из отрасли нефте-газа и с быстродействием я не сталкивался.

Мне кажется Ваше представление все же несколько надумано. Поиск информации в БД при программировании на ВИПе происходит довольно на низком уровне (в частности на Первазиве) ,т.е. с использование индесного поиска, где никакой оптимизации запросов делать уже не надо. Чисто теоретически понятно, что управлять поиском тут на уровне языка в принципе не чем и язык тут не при чем, если Вы нормально на нем программируете.

Если вы работаете на MS SQL, то при программировании на ВИПе, Вам надо понимать, как запрос ВИпа преобразуется в SQL-запрос и с учетом этих знаний программировать. Я понимаю, что это неудобно, т.к. обычно всей оптимизацией запроса занимается сам сервер и думать не надо, но тут так сделано....программирование на ВИПе - особое, нестандартное...СОГЛАСЕН.... но чем тут скорость.

АРД вот мы вообще не используем и не использовали...да и его убирают с Прайс-листа, по-моему, в 8-й версии его нет уже.

Хотя еще надо понимать, что ВИП всеже не нужет для тотальной доработки,т.к. Галактика все же готовая система, а нужен лишь для решения некоторых редких, небольших задач и поэтому ему не нужно может и быть таким уж эргономичным и т.д., как языки, которые используются для разработки. Он внутренний язык Галактики и используется в сочетании с использование внутренних функций Галактики...как бы поддерживающий язык, а не базовый. Для такого назначения он имеет нормальный уровень, я считаю.
ecasoft
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"

Сообщение ecasoft »

WiRus

Немного не по теме....а Вы работаете в фирме-партнере Сетевые Технологии в Воронеже?
WiRuc
Местный житель
Сообщения: 414
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж

Сообщение WiRuc »

ecasoft писал(а):WiRus

Немного не по теме....а Вы работаете в фирме-партнере Сетевые Технологии в Воронеже?
Нет. Сетевые - наша техподдержка.
Все проблемы решаем сами, к ним в основном обращаемся, чтобы заявить о баге в Галактике.
ecasoft
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"

Сообщение ecasoft »

А у нас клиеты 90% вопросов решают через нас главным образом. А по доработке - практически все вопросы. На ВИПе пишем все, что им не хватает.

С Сетевыми технологиями мы все хотели потеснее посотрудничать...в частности и наши разные доработки перенести на предприятия Воронежа (на их клиентов), но пока чего-то не очень все двигается - все в своих работах. Дело в том, что я сам очень часто бываю в Воронеже..даже 2006 год встречал в Воронеже и с дочкой на Гарри Потера в Спартак ходили :)
WiRuc
Местный житель
Сообщения: 414
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж

Сообщение WiRuc »

ecasoft писал(а):Мы не используем ничего, кроме ВИПа для доработок Галактики и не помню, чтобы что-то не сделали. Я не сталкивался с тормазами. Мы работали на десятках предприятий, некоторые из которых являются крупнейшими предприятиями России из отрасли нефте-газа и с быстродействием я не сталкивался.
Крупный по обороту не значит крупный по документообороту. Скажем, наша ТП когда узнала о нашем документообороте очень удивилась и призналась, что им никогда не приходилось иметь дело с таким размером БД.
ecasoft писал(а): Мне кажется Ваше представление все же несколько надумано. Поиск информации в БД при программировании на ВИПе происходит довольно на низком уровне (в частности на Первазиве) ,т.е. с использование индесного поиска, где никакой оптимизации запросов делать уже не надо. Чисто теоретически понятно, что управлять поиском тут на уровне языка в принципе не чем и язык тут не при чем, если Вы нормально на нем программируете.

Если вы работаете на MS SQL, то при программировании на ВИПе, Вам надо понимать, как запрос ВИпа преобразуется в SQL-запрос и с учетом этих знаний программировать. Я понимаю, что это неудобно, т.к. обычно всей оптимизацией запроса занимается сам сервер и думать не надо, но тут так сделано....программирование на ВИПе - особое, нестандартное...СОГЛАСЕН.... но чем тут скорость.
Да, у нас МSSQL, причем я очень хорошо владею SQL. Как раз при программировании на ВИПе мне и не надо задумываться о оптимизации запроса - итоговый запрос к MSSQL получается очень жестко фиксирован хинтами, даже сам MSSQL не может вмешаться в план его выполнения. А план этот чрезвычайно неоптимален. Кстати, индексный поиск далеко не во всех случаях является оптимальной стратегией выполнения запроса - есть еще такие вещи как HASH JOIN, MERGE JOIN. Т.е., программируя на SQL я имею полный контроль над тем как будет выполняться запрос (и соответственно скоростью выполнения запроса). А вот на ВИПе запрос жестко фиксирован, и повторюяь, практически всегда далек от оптимального.
Кроме того, SQL предназначен для манипуляции НАБОРОМ данных, а ВИП оперирует КАЖДОЙ записью по отдельности. Отсюда и медленная скорость работы. Например, если мне потребуется вывести в интерфейсе все МЦ с суммарным кол-вом, которые покупал определенный контрагент, то на ВИПе мне нужно будет организовать цикл по KATSOPR, внутри цикл по SPSOPR и внутри этого цикла наполнять временную таблицу. Т.е. каждая запись по отдельности вытягивается на клиента и обрабатывается. На SQL я бы это выполнил за один запрос на сервере, а на клиенте уже получил готовый набор данных. Скорость выполнения на ВИПе была бы на порядок меньше, чем выполнение запроса на SQL.
ecasoft писал(а): АРД вот мы вообще не используем и не использовали...да и его убирают с Прайс-листа, по-моему, в 8-й версии его нет уже.
Ну, если ARD уберут, то тогда наверное придется преобрести ВИП.
ecasoft писал(а): Хотя еще надо понимать, что ВИП всеже не нужет для тотальной доработки,т.к. Галактика все же готовая система, а нужен лишь для решения некоторых редких, небольших задач и поэтому ему не нужно может и быть таким уж эргономичным и т.д., как языки, которые используются для разработки. Он внутренний язык Галактики и используется в сочетании с использование внутренних функций Галактики...как бы поддерживающий язык, а не базовый. Для такого назначения он имеет нормальный уровень, я считаю.
Весь интерфейс Галактики написан на ВИПе - как тогда этот язык может не быть эргономичным? Хотя, претензии к эргомичности это конечно же мелочь - в принципе, интерфейс достаточно практичен. Гораздо больше угнетает функционал и скорость работы.
Последний раз редактировалось WiRuc 17 янв 2006, 20:24, всего редактировалось 1 раз.
Seybukan
Местный житель
Сообщения: 1357
Зарегистрирован: 29 мар 2005, 17:49
Откуда: СПб, ЭП-Аудит
Контактная информация:

Сообщение Seybukan »

Кроме того, интересует возможность "подтягивать" значение аналитики по значению КАУ верхнего уровня. Например, КАУ1 - подразделения, КАУ2 - менеджеры подразделений (пользовательская аналитика, есть связь с подразделением 1 к 1). При формировании ТХО после выбора из каталога подразделения для КАУ1 в проводке должна автоматически формироваться КАУ2 (соответствующий менеджер подразделения).
В ТЕМУ:
Если стоит 7.12
Используйте таблицу соответствия и директиву REPL.
Или же внешний атрибут к подразделению по аналитике "сотрудники" и функцию TxoSetKau.
Описание есть в стандартной доке.

К сожалению счета субсчета нет возможности определить как аналитику и нет возможности описать режим формирования. Можно обойтись только ТХО АПИ, которая выдает и суммы и разрезы.
То есть если не хотите писать апи только из-за определения счета субсчета - будет 2 шаблона ТХО, если напишите АПИ можно сделать вечно живущуюю ТХО с одним шаблоном.
WiRuc
Местный житель
Сообщения: 414
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж

Сообщение WiRuc »

2 Seybukan
Спасибо.
Буду разбираться завтра, сейчас пора домой :-)
Seybukan
Местный житель
Сообщения: 1357
Зарегистрирован: 29 мар 2005, 17:49
Откуда: СПб, ЭП-Аудит
Контактная информация:

Сообщение Seybukan »

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

Если субсчет по проводимому документу определяется не циклически - то есть по шапке документа.
То можно написать собственный режим формирования субсчета.
Соответственно у вас будет ТХО с одним шаблоном в котором счет определяется по шапке документа, а аналитика тянется КАУ1 из шапки документа, КАУ2 по соответствию или по функции TxoSetKau.
WiRuc
Местный житель
Сообщения: 414
Зарегистрирован: 29 мар 2005, 17:49
Откуда: Воронеж

Сообщение WiRuc »

Seybukan писал(а): Наврал. Пардоны.

Если субсчет по проводимому документу определяется не циклически - то есть по шапке документа.
То можно написать собственный режим формирования субсчета.
Соответственно у вас будет ТХО с одним шаблоном в котором счет определяется по шапке документа, а аналитика тянется КАУ1 из шапки документа, КАУ2 по соответствию или по функции TxoSetKau.
Вот это совсем отлично :-)
Когда начинали внедрять 5.85 вроде ничего похожего не было.
Еще раз спасибо.
Seybukan
Местный житель
Сообщения: 1357
Зарегистрирован: 29 мар 2005, 17:49
Откуда: СПб, ЭП-Аудит
Контактная информация:

Сообщение Seybukan »

Да счет\субсчет можно было в 5.85
Аналитика по соответствию и TxoSetKau пришли с TXO03 к релизу 7.12.
Читайте редмиху:
16. ПРОБЛЕМА В ПИР: 101.30234
ПРОЕКТ / ДЕТАЛИЗАЦИЯ:
Хозоперации / Предложения по новой функциональности модуля "Хозоперации"
ЧТО ИСПРАВЛЕНО:
Необходима доработка ТХО:

При разноске документов в бухучете необходимо формирование аналитики
по подразделениям с подменой относительно подразделения, указанного в
документе.

Подмена должна происходить по заранее определенному правилу (для каждого
конкретного подразделения). Реализация подмены возможна по двум вариантам:
1. Через внешние атрибуты подразделений
2. Через таблицы соответствия (меню модуля "Хозоперации")

Область "действия" ТХО: модули "Складской учет", "Управление снабжением",
"Учет спецодежды", "Основные средства". Возможно - некоторые другие.
КАК ИСПРАВЛЕНО:
В ТХО реализована серия доработок которая позволяет при
формировании проводок подменить значения аналитики
первичного документа значениями другой аналитики. В
частности как заказывал автор проблемы 101.30234 можно
подменить одни подразделения на другие. Но это лишь частный
случай, это решение позволяет подменять любую из имеющейся
аналитики на любую другую аналитику.

Реализовано два подхода: первый - с использованием
"Таблиц соответствий", второй - с использованием "Внешних
атрибутов типа ссылка". Отличаются эти подходы способом
хранения значений для подмены.

Подробнее см. руководство пользователя модулей "ХозОперации" и
"Бухгалтерская отчетность", редакция 07.2005, разделы:
- 4.2.4.4. "Каталог соответствий аналитики"
- 4.2.5.2. "Замена аналитики по таблице соответствия" - директива Repl
- 4.2.7. "Специальные функции" - coTXOGetExtAttr, TxoSetKau, пример

Примечание: в текущем патче каталог соответствий аналитики можно вызвать
из локального меню окна настройки ТХО.
ecasoft
Местный житель
Сообщения: 645
Зарегистрирован: 29 мар 2005, 17:49
Откуда: г.Королев МО ООО "Эффективная Комплексная Автоматизация- СОФТ"

Сообщение ecasoft »

Не буду спорить на счет ВИПа, у нас все равно нет выбора, кроме как писать на нем :) И тем более мы никогда не сталкивались с проблемой по быстродействию. Хотя есть одна наша программа, которая работает 4 часа даже на не очень большой БД, но ее запускают 1 раз в месяц и поэтому это клиента устраивает. Поэтому я это не отношу к проблемам быстродействия. Все его недостатки и то, что он поддерживает клиент-сервер на уровне записей - я в курсе. Но из любого другого языка трудно запустить штатные интерфейсы Галактики, использовать штатные функции и объекты Галактики и приходится писать на уровне работы с БД, что подходит лишь для отчетов, а интерфейсы вообще не понимаю как писать - нереально просто. Ну и естественно, еще проблема, что полученные решения на ВИПе я могу использовать на всех клиентах своих, а на SQl - только у тех, кто работает на данной платформе. Поэтому может Вам это лучше подходит, но мне даже и думать о другом каком-то подходе нет смысла (тем боле когда нет потребностей..т.е. проблем у клиентов).
Только Вы так категорично пишите, что на ВИПе невозможно что-то написать...когда на самом деле это касается какой-то Вашей конкретной задачи, которая коснулась исключительно Вас.
Ответить