|
|
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Delphi159 2) как отличать "мою фирму(фирмы)" от других контрагентов в таблице contragents? я думаю создать поле "my" в contragents и записать 0 или 1. Но тогда получается я уже 2 дополнительных поля создал в contragents, что меня самому не нравится. Есть у кого-нибудь другое более "красивое" решение? Сейчас подумал, можно в таблице contr_types добавить четвертое- "моя фирма", тогда не придется создать дополнительное поле в contragents! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2015, 14:27 |
|
||
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Delphi1591) как отличать покупателей от поставщиков, которые вместе в таблице contragents? я думаю создать поле в contragents и хранить например "s" для поставщиков(seller), a "c" для покупателей(clients), а 0 для "моей фирмы". Есть у кого-нибудь другое решение?Предолженные мной решения выше ты читал? Delphi1592) как отличать "мою фирму(фирмы)" от других контрагентов в таблице contragents? я думаю создать поле "my" в contragents и записать 0 или 1. Но тогда получается я уже 2 дополнительных поля создал в contragents, что меня самому не нравится. Есть у кого-нибудь другое более "красивое" решение?Мысль про периодичность данного реквизита дошла до получателя? Delphi1593) как реализовать лицо-контрагент является физическим(Individuals) или юридическим(LegalEntities), если у них есть разные поля- например: Passport_id, Firstname,Lastname,Birthday только для физиков и Identcode,Manager, ChiesAcc только для юридиков? В каком таблице и как создать Individuals и LegalEntities? С каким таблицом их связать? Здесь вариантов у меня совсем нет.Общая для всех инфа в таблице контрагентов, специфическая для юриков в своей табличке, специфическая для физиков в своей, специфическая для "своей фирмы" в своей табличке. Для подпидки периодического реквизита "свой" рекомендую еще одну табличку. Далее эстеты могут обернуть это вьюхой, это по желанию. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 19.01.2015, 14:34 |
|
||
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Ivan_PisarevskyDelphi1591) как отличать покупателей от поставщиков, которые вместе в таблице contragents? я думаю создать поле в contragents и хранить например "s" для поставщиков(seller), a "c" для покупателей(clients), а 0 для "моей фирмы". Есть у кого-нибудь другое решение?Наличие накладнушки с флажком "расходная" - покупатель, наличие накладнушки типа "приходная" - поставщик. тривиальный exists для выборок, где это требуется и вперед. Хранить его нафиг никому не нужно. Неужели выбирать из накладных по флажкам будет быстрее чем селект из одной маленькой таблицы contragents, где будет всего одним полем больше, где хранить например "s" для поставщиков(seller), a "c" для покупателей(clients), а 0 для "моей фирмы"?. Кроме этого, например создали контрагента-покупателя, но пока не вводили приход и его нет в списке накладных, хота он уже имеется в контрагентах. Ivan_PisarevskyDelphi1592) как отличать "мою фирму(фирмы)" от других контрагентов в таблице contragents? я думаю создать поле "my" в contragents и записать 0 или 1. Мысль про периодичность данного реквизита дошла до получателя? дошла и создал в contragents поле "myfirms", а для хранения периодических реквизитов создал таблицу contragents_per, где сохраню изменения этого поля по датам. см. диаграмму: http://pixs.ru/showimage/contragent_9045868_15667532.png Ivan_PisarevskyDelphi1593) как реализовать лицо-контрагент является физическим(Individuals) или юридическим(LegalEntities), если у них есть разные поля- например: Passport_id, Firstname,Lastname,Birthday только для физиков и Identcode,Manager, ChiesAcc только для юридиков? В каком таблице и как создать Individuals и LegalEntities? С каким таблицом их связать? Здесь вариантов у меня совсем нет.Общая для всех инфа в таблице контрагентов, специфическая для юриков в своей табличке, специфическая для физиков в своей, специфическая для "своей фирмы" в своей табличке. Для подпидки периодического реквизита "свой" рекомендую еще одну табличку. Далее эстеты могут обернуть это вьюхой, это по желанию. создал 2 таблицы- individuals и legal entities, они связани с contragents связью 1 к 1, в contragents храню общую инфу, а в individuals и legal entities-специфические для юриков и физиков. Посмотрите пожалуйста диаграмму и оцените / поправьте / дайте предложения! Спасибо заранее! PS. нужна или нет в таблице contracts создать 2 поле для опознания 2 стороны контракта-покупатель(поставщик) и "мой фирма(фирмы)", чтобы опознать с одной стороны контрагента, а с другой- "мой фирму"(их же может быть несколько)? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2015, 04:13 |
|
||
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Delphi159Неужели выбирать из накладных по флажкам будет быстрее чем селект из одной маленькой таблицы contragents,сопоставимо. см. доку про индексные чтения. А доп табличку кто-то должен вести руками или автоматом с неким периодом, хлопоты короче. Delphi159Кроме этого, например создали контрагента-покупателя, но пока не вводили приход и его нет в списке накладных, хота он уже имеется в контрагентах.Нет никакой проблемы показывать свежих всегда, а "неправильных" по хоткею (клику по кнопке) сбрасывать фильтр, чтоб можно было отгрузить тому, кто штатным фильтром отсеивается. Delphi159дошла и создал в contragents поле "myfirms", а для хранения периодических реквизитов создал таблицу contragents_per, где сохраню изменения этого поля по датам. см. диаграмму: http://pixs.ru/showimage/contragent_9045868_15667532.png Это у тебя курсач или для работы? Для курсовика сгодится, для работы все (практически) надо менять. Delphi159PS. нужна или нет в таблице contracts создать 2 поле для опознания 2 стороны контракта-покупатель(поставщик) и "мой фирма(фирмы)", чтобы опознать с одной стороны контрагента, а с другой- "мой фирму"(их же может быть несколько)?нихрена не понял. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2015, 09:09 |
|
||
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Ivan_PisarevskyDelphi159дошла и создал в contragents поле "myfirms", а для хранения периодических реквизитов создал таблицу contragents_per, где сохраню изменения этого поля по датам. см. диаграмму: http://pixs.ru/showimage/contragent_9045868_15667532.png Это у тебя курсач или для работы? Для курсовика сгодится, для работы все (практически) надо менять. Неужели так трагически обстоит дела? Можете конкретнее!.. см. http://pixs.ru/showimage/contragent_7213474_15671731.png Ivan_PisarevskyDelphi159PS. нужна или нет в таблице contracts создать 2 поле для опознания 2 стороны контракта-покупатель(поставщик) и "мой фирма(фирмы)", чтобы опознать с одной стороны контрагента, а с другой- "мой фирму"(их же может быть несколько)?нихрена не понял. Я имел ввиду: для того,чтобы узнать между какими контрагентами оформлен контракт не надо в таблице contracts добавить 2 id_contragents- один для контрагента, а другой для "моих фирм"? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2015, 13:41 |
|
||
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Delphi159Неужели так трагически обстоит дела?Зависит от ответа на первый вопрос. :) Delphi159между какими контрагентами оформлен контрактВ контракте надо просто указать ВСЕХ участвующих в нем контрагентов, потом табличка контрагентов джойнится требуемое число раз к табличке договоров. Например, типичный документ счет-фактура (как впрочем и накладная типа торг12) содержит 4 контрагента, в частных случая некоторые контрагенты могут совпадать, а могут и не совпадать. Delphi159Можете конкретнее!Например данные о контактах могут на более чем одного человека в каждом контагенте (включая чипистов), для курсовика пох, а вот для работы куда удобней контактные данные хранить в одной табличке на все случаи жизни и прицеплять персон оттуда по мере необходимости куда надо, вывески меняются, люди остаются. И таких косяков в твоей схеме вагон ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2015, 13:55 |
|
||
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Ivan_PisarevskyDelphi159Неужели так трагически обстоит дела?Зависит от ответа на первый вопрос. :) Нет, не курсач Ivan_PisarevskyDelphi159между какими контрагентами оформлен контрактВ контракте надо просто указать ВСЕХ участвующих в нем контрагентов, потом табличка контрагентов джойнится требуемое число раз к табличке договоров. Например, типичный документ счет-фактура (как впрочем и накладная типа торг12) содержит 4 контрагента, в частных случая некоторые контрагенты могут совпадать, а могут и не совпадать. Значит, в контракте всё таки надо указать участвующих в нем контрагентов? И для этого думаю добавить в таблице contracts ссылки id_contragents_contr, id_contragents_my, id_contragents_3, id_contragents_4 на клучевие поля id_contragents таблицы contragents. Например, если договор подписали контрагент А и "моя фирма" В, тогда в таблице contracts в поле id_contragents_contr заносим id конрагента А в таблице contragents, а для "мой фирма" в поле id_contragents_my заносим id конрагента В в таблице contragents. Или вы подразумеваете иной путь- вводить в одном поле в таблице contracts перечисление типа А;B;C;D где на первом месте конрагент, на втором(после ;) - "мой фирма", а C и D-третья и четвертая сторона контракта? Ivan_PisarevskyDelphi159Можете конкретнее!Например, данные о контактах могут на более чем одного человека в каждом контагенте (включая чипистов), для курсовика пох, а вот для работы куда удобней контактные данные хранить в одной табличке на все случаи жизни и прицеплять персон оттуда по мере необходимости куда надо, вывески меняются, люди остаются. И таких косяков в твоей схеме вагон Была эта таблица, но вчера комп авариино выключился и потерял инфо и до конца не смог воостановить, сегодня добавлю. Спасибо вам! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2015, 15:53 |
|
||
|
не могу понять суть выражения в COMPUTED BY
|
|||
|---|---|---|---|
|
#18+
Delphi159Нет, не курсачТогда над схемой БД еще работать и работать, вдумчиво. Delphi159в контракте всё таки надо указать участвующих в нем контрагентов?Разумеется. Delphi159вводить в одном поле в таблице contracts перечисление типа А;B;C;DТакого я точно не говорил, это прямое нарушение первой нормальной формы. Если надо закреплять заранее неизвестное и неограниченное число контраегентов, то это только доп таблицей обеспечивающей такую связь, насколько это нужно вам, решать вам, исходя из вводных. Delphi159Спасибо вам!Странно проектировать БД опираясь на советы форума, у меня же нет вашего ТЗ, я тут могу много сказок рассказывать, абстрактных. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 20.01.2015, 16:05 |
|
||
|
|

start [/forum/search_topic.php?author=ViMa&author_mode=last_topics&do_search=1]: |
0ms |
get settings: |
9ms |
get forum list: |
24ms |
get settings: |
10ms |
get forum list: |
25ms |
check forum access: |
5ms |
check topic access: |
5ms |
track hit: |
85ms |
get topic data: |
12ms |
get first new msg: |
8ms |
get forum data: |
4ms |
get page messages: |
37ms |
get tp. blocked users: |
1ms |
| others: | 662ms |
| total: | 887ms |

| 0 / 0 |
