Создать документ нового типа
Модераторы: m0p3e, edward_K, Модераторы
Создать документ нового типа
Всем привет! Возникла задача создать свой тип документа (шапка + спецификация). Интерфейс буду писать сам. Нужно место для хранения данных. Есть ли вообще стандартное решение-подход в таком случае? Скажем завести в KatDoc свой тип данных, чтобы Галактика не похерила мои данные в будущем или при всяких проверках целостности, заюзать KatSopr + SpSopr/SpDocs. Или же нужно создавать свои таблицы? В общем нужен ваш совет. Спасибо.
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Создать документ нового типа
ну уж если гарантировано - то свои таблы. Хотя можно поискать и готовый
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Создать документ нового типа
Трудно сказать навскидку, не зная Вашей задачи. Но, видимо ,задача довольно приличная...
Все же реализация через добавление своих таблиц в словарь кажется более привлекательной.Главным образом за счет независимости от прикладной части стандартного функционала галактики.Кроме этого, при добавлении своих табл не будет изменяться контр сумма словаря (только заранее желательно тщательно продумать структуру данных и индекосв таблиц, т.к., насколько я понял, впоследствии для этого нужно будет отключать проекты, журнализации и т.д.).
С другой стороны, если Ваша задача вполне укладывается в рамки ,грубо говоря, katsopr+spsopr, то может быть и не нужно всего этого. Ну в в крайнем случае,если есть необходимость работать с данными, не помещающимися в стандарную структуру табл, можно к katsopr|spsopr добавить свои таблы опять же.
В любом случае, весьма вероятно, что потребуется отражения своих документов в журнале хозопераций с последующим проведением по ним ТХО. Это тоже серьезный фактор для раздумий
Все же реализация через добавление своих таблиц в словарь кажется более привлекательной.Главным образом за счет независимости от прикладной части стандартного функционала галактики.Кроме этого, при добавлении своих табл не будет изменяться контр сумма словаря (только заранее желательно тщательно продумать структуру данных и индекосв таблиц, т.к., насколько я понял, впоследствии для этого нужно будет отключать проекты, журнализации и т.д.).
С другой стороны, если Ваша задача вполне укладывается в рамки ,грубо говоря, katsopr+spsopr, то может быть и не нужно всего этого. Ну в в крайнем случае,если есть необходимость работать с данными, не помещающимися в стандарную структуру табл, можно к katsopr|spsopr добавить свои таблы опять же.
В любом случае, весьма вероятно, что потребуется отражения своих документов в журнале хозопераций с последующим проведением по ним ТХО. Это тоже серьезный фактор для раздумий
Re: Создать документ нового типа
Ясно, спасибо. Значит ничего стандартного нет. Жаль. Задача довольно часто встречается. Свои таблицы создавать не очень хочется, да и вычистить журнал не получится - откаты делаем периодически.
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Создать документ нового типа
чистка журнала нужна для alter dictionary. Без нее все добавляется. Штатно рекомендуется через консоль управления.
А так добавлял в sql, удалял в vip.
А так добавлял в sql, удалял в vip.
Re: Создать документ нового типа
Для create table тоже нужно чистить журнал и отрубать протект. Хотя таблица и добавляется (не смотря на предупреждение компилятора), но обращение к ней вызывает некоторые тормоза. Поэтому с добавлением новых таблиц не так все просто, и хотелось бы обойтись штатными средствами Галактики (
Re: Создать документ нового типа
Чтобы сделать свой документ. Можете использовать в качестве основы документ "Бухгалтерская справка". Для этого заведите отдельный тип бух справки (в настройках модуля ФРО). Соблюдайте правила заполнения и назначение имеющихся полей таблицы PlPor и SoprHoz. Чтобы работали стандартные алгоритмы, ТХО, проверки целостности и т.д.
Свои дополнительные данные храните в своих таблицах. Свяжите их с PlPor или с SoprHoz. Свое окно редактирования естественно придется сделать. И алгоритмы ТХО.
Свои дополнительные данные храните в своих таблицах. Свяжите их с PlPor или с SoprHoz. Свое окно редактирования естественно придется сделать. И алгоритмы ТХО.
Re: Создать документ нового типа
К стати есть таблица SPPLPOR задумывалась когда то давно, как раз как абстрактная спецификация для всяких абстрактных задач пополнения бухгалтерских документов данными. Но давно уже с этой темой не сталкивался. Насколько эта таблица сейчас "жива" и насколько оформились и устоялись правила ее применения внешними программистами я сейчас не особо в курсе.
Если не желаете создавать свои таблицы, попробуйте проконсультироваться с отделами разработки по поводу использования штатных таблиц для абстрактных внешних разработок.
Хотя на счет добавления своих таблиц это в любом случае было бы лучше. Получается вам мешает только требование временной очистки журнала и отключения проекта? Или есть еще какие-то препятствующие причины?
Если не желаете создавать свои таблицы, попробуйте проконсультироваться с отделами разработки по поводу использования штатных таблиц для абстрактных внешних разработок.
Хотя на счет добавления своих таблиц это в любом случае было бы лучше. Получается вам мешает только требование временной очистки журнала и отключения проекта? Или есть еще какие-то препятствующие причины?
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Создать документ нового типа
и добавлял/удалял свои таблы не делая этого - не замечал пока никаких косяков.galover писал(а):Для create table тоже нужно чистить журнал и отрубать протект. Хотя таблица и добавляется (
Re: Создать документ нового типа
Den, когда добавлял? Я 3 месяца назад свои таблицы vip-ом добавлял, получал предупреждение или ошибку даже (сейчас не помню) о том что нужно чистить журнал и отключать протект, таблица создавалась, но потом при обращении к ней шли странные тормоза. У нас протект включен, есть разграничения прав по таблицам, права пересчитывал, бесполезно.
З.Ы. Кстати последние патчи (новогодние, где есть изменения по з/п), связанные с изменением словаря, также требуют чистки журнала и отрубания протекта.
З.Ы. Кстати последние патчи (новогодние, где есть изменения по з/п), связанные с изменением словаря, также требуют чистки журнала и отрубания протекта.
Re: Создать документ нового типа
LaaLaa Спасибо, посмотрю эти таблицы, может чего еще ТП подскажет. Мешают добавлять свои таблицы именно ограничения (требования компилятора), связанные с отключением протекта и чистки журнала. Как я уже писал, таблицы создаются, но идут заметные тормоза при обращении к ним (может только при первом обращении, хотя сильно не исследовал).
-
- Местный житель
- Сообщения: 1844
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: Ярославская область ОАО "Часовой завод Чайка" г. Углич
- Контактная информация:
Re: Создать документ нового типа
galover, извиняй.. Да, действительно, у меня далеко не последние патчи, аля 5.4.3X в силу обстоятельств...Жалко, конечно , что разработчики внесли такие вот изменения в мехинизм добавления таблиц. Было(видимо, приходиться уже в прошедшем времени констатировать..), конечно, удобно работать по старому механизму без протектов,журнализаций (
Re: Создать документ нового типа
А ведь требование к отключению журнала при докомпиляции следствие лени разработчиков.
Доработать элементарно! Предварительное удаление записей в журнале по изменяемым таблицам - самый простой способ.
Доработать элементарно! Предварительное удаление записей в журнале по изменяемым таблицам - самый простой способ.
Re: Создать документ нового типа
Да, еще вспомнил главное ограничение на добавление своих таблиц. Помимо тормозов при обращении, созданные таблицы не журнализируются, хотя и стоят как журнализируемые. Такое поведение, если не чистить журнал и не отрубать протект. А поскольку чистить журнал никак нельзя, то остается одно - юзать стандартные таблицы Галактики
-
- Заслуженный деятель интернет-сообщества
- Сообщения: 5188
- Зарегистрирован: 29 мар 2005, 17:49
- Откуда: SPB galaxy spb
Re: Создать документ нового типа
вы просто не умеете их готовить .
У меня все прекрасно журнализируется.
При добавлении через сапорт-SQL журнал не чистил
уже обсуждалось, что теперь alter dictionary для своих таблиц не нужен и даже вреден.
Если без header, то должны добавить поле nrec (ну и другие по шапке), и по нему создать индекс с опциями уникальный, журнализируемый, суррогатный. Тогда таблица появится в списке таблиц для журнализации.
Но вообще это крайняя мера - по возможности нужно заюзать стандартные документы.
Можно вообще же документ на проводках построить(с забалансовым счетом например) - та же бухсправка. По дороге получите несколько десятков готовых отчетов .
У меня все прекрасно журнализируется.
Код: Выделить всё
Create Table D_USER.My_table1 "My_table1"
With Table_CODE = 32762
With TableOptions header, journal
(
cpodr : comp "подразделение"
,price : double "цена"
)
with index
(
in2 = cpodr
);
уже обсуждалось, что теперь alter dictionary для своих таблиц не нужен и даже вреден.
Если без header, то должны добавить поле nrec (ну и другие по шапке), и по нему создать индекс с опциями уникальный, журнализируемый, суррогатный. Тогда таблица появится в списке таблиц для журнализации.
Но вообще это крайняя мера - по возможности нужно заюзать стандартные документы.
Можно вообще же документ на проводках построить(с забалансовым счетом например) - та же бухсправка. По дороге получите несколько десятков готовых отчетов .