Top.Mail.Ru
Мастера DELPHI, Delphi programming community Титульная страница Поиск, карта сайта Написать письмо 
| Новости | Поиск | FAQ | Статьи | Книги | Новости VCL |
| Форумы ЧАТ | Орешник | KOL и MCK |
Форумы -» Основная («Начинающим»)/ Базы / WinAPI / Компоненты / Сети / Media / Игры / Corba и COM / KOL / FreePascal / .Net / Прочее / RSDN.ORG

« предыдущая ветвь | форум | следующая ветвь »

Триггеры в master-detail [IB6.x]


Страницы:   1 2 3 4 5 6

deras ©   (2007-05-21 15:36:00) 

есть 3 таблицы:
1) Главная T_MAIN
Поля: ID, ID_KONTRAG, ID_SKLAD

2)Подчиненная T_CHILD
Поля: ID, ID_PARENT, KOLVO, CENA, SUMA

T_CHILD.ID_PAREN -> T_MAIN.ID

3) Таблица KUB
Поля: ID, ID_KONTRAG, ID_SKLAD, KOLVO, CENA, SUMA

Как повесить триггеры (After INS/UPD/DEL) на какую-то из T_MAIN или T_CHILD (точно не знаю), чтоб данные попадали в таблицу KUB?


ANB   (2007-05-23 13:43:00) [21]


> Я совсем о другом

Почему бы операцию перемещения товара не представить в виде "проводки" ? Разница только в том, что вместо суммы и валюты нужно записать код товара, цены и количество. Впрочем в реале и суммовые проводки не ограничиваются только суммой.


Сергей М.   (2007-05-23 13:40:00) [22]


> ANB ©   (23.05.07 13:34) [85]


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


ANB   (2007-05-23 13:34:00) [23]


> Главный признак, характерный для любого движения - логическая
> связность последовательностей его отдельных актов.

Это если проводка = 2 записи. Если Проводка = 1 запись то она самодостаточна. Я предпочитаю второй вариант.


Сергей М.   (2007-05-23 13:29:00) [24]


> то не та ли таблица KUB


Нет, не та.
Та самая KUB - это вообще невесть есть что.

Главный признак, характерный для любого движения - логическая связность последовательностей его отдельных актов. В KUB этим даже не пахнет.


deras   (2007-05-23 13:21:00) [25]

>ANB ©   (23.05.07 12:45) [79]
Очень полезная (для меня) информация. Спасибо

>Каждая операция перемещения отражается в справочнике движения

Может я чет не понял, но это не та ли таблица KUB, о которой я говорил в вопросе темы (в самом начале)?


Сергей М.   (2007-05-23 12:59:00) [26]


> Посему на основании шаблонов просто создавал/корректировал/удалял
> проводки в отдельном слое чисто суммового учета. Получилось
> удобно


Не спорю, так удобней.


ANB   (2007-05-23 12:47:00) [27]


> Посему ничто не мешает ассоциировать с каждой операцией
> список из одного или более шаблонов проводок и дать юзерам
> с бухг.ролями права редактирования этих списков.

Дык так и сделано было. Пробовал эти шаблоны анализить на лету уже при построении отчетов (первая версия :) ), получилось хреново и медленно.
Посему на основании шаблонов просто создавал/корректировал/удалял проводки в отдельном слое чисто суммового учета. Получилось удобно.


Сергей М.   (2007-05-23 12:47:00) [28]


> deras ©   (23.05.07 12:32) [77]
>
> При перемещении  как определить, с какой приходной ценой
> перемещается товар?


Каждая операция перемещения отражается в справочнике движения двумя смежными и логически неотъемлемыми актами - расходным и приходным, ссылающимся на расходный.

Расходный акт в контексте операции перемещения, в свою очередь, ссылается на свой приходный акт, оттуда и берется приходная стоимость. Соотвестствующий приходный акт в контексте данной операции перемещения, естественно, отражает ту же стоимость.


ANB   (2007-05-23 12:45:00) [29]


> deras ©   (23.05.07 12:32) [77]

я сделал тупо - 2 цены. Одна - по какой забираем, вторая - по какой приходуем. И все сошлось.
Для количественного учета завел :
Таблица объектов учета (склады, магазины и прочее с атрибутами, деревянная для удобства получения отчетов в разных разрезах)
Таблица справочника товаров (тоже деревянная, хотя потом пришел к выводу, что удобнее плоская + деревянная таблица групп)
Таблица остатков, в которой храним чего, сколько, где и по какой цене прямо сейчас валяется (хранил только текущие остатки без промежутков, начальные получал обратным счетом, для периода до года - довольно быстро даже на клиппере).
Таблица документов - тупо заголовки документов чисто для удобства
Таблица движения товаров, подвязанная к документам. Слегка денормализовал, т.е. часть атрибутов (откуда и куда), которые можно было взять из заголовка документа хранил тоже в этой таблице - для скорости построения отчетов.
По минимуму - достаточно. Но только если везде, в том числе и в магазине вести количественный учет (т.е. кассы со сканнерами).
Точные атрибуты каждой таблицы определяются по особенностям учета.
На дорогую складскую систему такая структура не тянет, т.к. там все сложнее намного (учитываются партии, сроки, что где лежит, условия хранения, есть процедуры инвентаризации и прочие полезные вещи).


Сергей М.   (2007-05-23 12:41:00) [30]


> операция закупки превращается минимум в 2 проводки по бухгалтерии


Это уж самой бухгалтерии решать, сколько и каких проводок должно быть создано в рез-те проведения док-та с тем или иным видом операции.

Задача же разработчика - автоматизировать, если необходимо, процесс генерации/удалении группы необходимых проводок при проведении/откате торгово-складского документа.

Посему ничто не мешает ассоциировать с каждой операцией список из одного или более шаблоновпроводок и дать юзерам с бухг.ролями права редактирования этих списков.


deras   (2007-05-23 12:32:00) [31]

При перемещении  как определить, с какой приходной ценой перемещается товар?


ANB   (2007-05-23 12:32:00) [32]


> Месить бухучет и торгово-складской учет в одну кучу еще
> неудобней.

Вот сколько я видел реализаций спец.торгово-складского учета не по правилам бух.учета, таки они все жутко кривые. И работать с ними было неудобно.


ANB   (2007-05-23 12:28:00) [33]


> Месить бухучет и торгово-складской учет в одну кучу еще
> неудобней.

В моей бухгалтерии они ведуться параллельно. Т.к. даже несчастная операция закупки превращается минимум в 2 проводки по бухгалтерии.


Сергей М.   (2007-05-23 12:18:00) [34]


> ANB ©   (23.05.07 11:57) [72]


> Не удобно. Вполне достаточно делать двойную запись, как
> в обычной бухгалтерии


Месить бухучет и торгово-складской учет в одну кучу еще неудобней.


> deras ©   (23.05.07 12:09) [73]


> Можно ли давать пользователю редактировать/удалять д-ты
> прихода/расхода? Если можно, то в каких случаях?


Можно, в случаях когда пользователь вошел в систему с соответствующей ролью.
Каждая роль определяет права пользователя на осуществление тех или иных технологических операций, в т.ч. проведение/откат/редактирование/удаление тех или иных документов и их видов.


deras   (2007-05-23 12:09:00) [35]

Хорошо.
Можно ли давать пользователю редактировать/удалять д-ты прихода/расхода? Если можно, то в каких случаях?


ANB   (2007-05-23 11:57:00) [36]


> Он связывает тип операции (приход, расход) с видом операции
> (поставка, возврат поставщику, возврат от покупателя, реализация,
>  внутреннее перемещение, списание и т.д.). Каждый акт движения
> должен ссылаться на элемент справочника тов.операций.

Не удобно. Вполне достаточно делать двойную запись, как в обычной бухгалтерии - т.е. что, сколько, по какой цене откуда взяли и куда дели.
Тип операции - только для справки. Впрочем, его удобнее хранить в заголовке документа. При такой организации можно быстро выгребать приходы и расходы для каждого объекта.
ЗЫ. Вообще то обычно конторки типа пара складов и несколько магазинов используют систему триторга - т.е. на складах учет количественный (по товарам и  ценам), в магазинах - суммовой. Если вести в магазинах количественный учет, то надо ставить кассы со сканнерами штрихкодов, а к этому не все готовы.


Сергей М.   (2007-05-23 11:47:00) [37]


> Если есть отдельная таблица остатков, то как (при каких
> операциях) заносить в нее данные?


Это же очевидно - вставка записей при приходе, а обновление/удаление записи при расходе.


deras   (2007-05-23 11:44:00) [38]

>Крайне желателен еще как минимум один справочник - Справочник >товарных операций.
>Он связывает тип операции (приход, расход) с видом операции (поставка, >возврат поставщику, возврат от покупателя, реализация, внутреннее >перемещение, списание и т.д.). Каждый акт движения должен ссылаться на >элемент справочника тов.операций.

это у меня есть и так и делаю - в каждом документе есть id операции

>Вряд ли.
>Я бы даже сказал, что совсем не удобно.

Тогда вопрос (хотя он может быть и не связан с Вашим ответом): как показать остатки на складе? Если есть отдельная таблица остатков, то как (при каких операциях) заносить в нее данные?


Сергей М.   (2007-05-23 11:10:00) [39]


> все документы по приходу и расходу заносятся в одну таблицу?


В подавляющем большинстве реализаций - да.


> Приход - со знаком  "+", а расход с "-"?
> Это удобно?


Вряд ли.
Я бы даже сказал, что совсем не удобно.

Крайне желателен еще как минимум один справочник - Справочник товарных операций.
Он связывает тип операции (приход, расход) с видом операции (поставка, возврат поставщику, возврат от покупателя, реализация, внутреннее перемещение, списание и т.д.). Каждый акт движения должен ссылаться на элемент справочника тов.операций.


deras   (2007-05-23 10:55:00) [40]

>Да, нужна.

Насколько я понял, все документы по приходу и расходу заносятся в одну таблицу? Приход - со знаком  "+", а расход с "-"?
Это удобно?


Страницы:   1 2 3 4 5 6

Наверх

Титульная страница Поиск, карта сайта Написать письмо