powered by simpleCommunicator - 2.0.59     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / не могу понять суть выражения в COMPUTED BY
25 сообщений из 33, страница 1 из 2
не могу понять суть выражения в COMPUTED BY
    #38857083
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте!

в БД firebird "Инфо-предприятие"в таблице C_CLIENTS есть поле CLIENT_GROUPS, в этом поле хранится тип контрагента:"Поставщик", "Покупатель" или "Поставщик, Покупатель":
CLIENT_GROUPS COMPUTED BY ((select res from C_CLIENT_GROUPS(c_clients.kod_str)))
не могу понять какое выражение написано в COMPUTED BY? что значит res, что значит from C_CLIENT_GROUPS(c_clients.kod_str)? как реализовано хранение этих типов контрагента?
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857088
MrCat
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Значение поля вычисляется в хранимой процедуре C_CLIENT_GROUPS (Res - её выходной параметр). Значения для вычисляемых полей вычисляются в момент чтения записи, а не хранятся.
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857096
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
сорри, я искал в таблицах, есть такая хп:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
declare variable TYP varchar(255);
begin
  /* Procedure Text */
  res = '';
  for select s.displaylabel from c_groups_cl_relations r join ip$sets s on (r.client_type = s.id)
    where (r.client_kod = :client_kod) into :typ do
    begin
      if (res <> '') then res = res || ', ';
      res = res || ExtractWord(1, typ, '|');
    end
  suspend;
end



но очень медленно работает, кто-нибудь может сказать как легче реализовать сохранение в бд типа контрагента, когда он является и поставщиком и покупателем?
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857105
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159кто-нибудь может сказать как легче реализовать сохранение в бд типа
контрагента, когда он является и поставщиком и покупателем?
Смотря зачем тебе вообще такое нужно. Можно два булевых поля, можно битовую маску, можно
дополнительные таблицы.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857108
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovDelphi159кто-нибудь может сказать как легче реализовать сохранение в бд типа
контрагента, когда он является и поставщиком и покупателем?
Смотря зачем тебе вообще такое нужно. Можно два булевых поля, можно битовую маску, можно
дополнительные таблицы.

Пишу складскую программу, где в таблице contragents хранится поставщики,покупатели, "моя фирма"... Иногда некоторая фирма и покупает товар(услуги), а иногда является и поставщиком. может в будущем появится еще третий тип контрагента. Как реализовать эту возможность?
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857109
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159Как реализовать эту возможность?
Какую "эту" возможность? Зачем тебе вообще в складской программе разделять контрагентов по
типам?
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857111
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov Зачем тебе вообще в складской программе разделять контрагентов по типам?

Может быть я вас не понял, но не имея в бд поле, где хранится какой-нибудь признак поставщика, как написать запрос выборки из бд поставщиков, если они храниться вместе с покупателями и "моей фирмой"?
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857117
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159как написать запрос выборки из бд поставщиков
По договорам, где они прописаны как поставщики, вестимо. Если, конечно, их вообще зачем-то
надо выбирать. В чём лично я, например, сильно сомневаюсь.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857122
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovDelphi159как написать запрос выборки из бд поставщиков
По договорам, где они прописаны как поставщики, вестимо. Если, конечно, их вообще зачем-то
надо выбирать. В чём лично я, например, сильно сомневаюсь.


то есть всё таки надо где нибудь сохранить этот признак- по вашему в таблице contracts
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857124
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159то есть всё таки надо где нибудь сохранить этот признак- по вашему в
таблице contracts
Ссылку на контрагента в договоре ты называешь "признаком"?.. Нуууу... всё бывает на этом
свете...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857133
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovDelphi159то есть всё таки надо где нибудь сохранить этот признак- по вашему в
таблице contracts
Ссылку на контрагента в договоре...


Понял, а что сделать при розничном торговле, к розничными покупателями у нас договора же не будет и следовательно в таблице contracts записи для него нет?
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857135
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
и ещё если можно как различать мою фирму от других контрагентов? создать поле и записать там "other" или "My"? Или как по-другому?
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857138
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159и ещё если можно как различать мою фирму от других контрагентов?
Очень просто: твой фирма никогда не является контрагентом и ей нечего делать среди остальных.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857141
Фотография kdv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159 COMPUTED BY ((select res from
за такое надо щипцами пальцы откусывать.
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857149
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry Sibiryakov
1) тут аргументировали мысль о том, что лучше хранить контрагентов и мою фирму(фирмы) вместе:
http://www.sql.ru/forum/1124663-2/my-i-nashi-kontragenty-dve-tablicy-ili-odna

2) вы сказали создать id_contragents ссылку в таблице contracts и связать contragents и contracts через эту ссылку. А как найти покупателя- физическое лицо при розничном торговле, к розничными покупателями у нас договора же не будет и следовательно в таблице contracts записи для него нет?
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857199
Фотография roadster
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi1591) тут аргументировали мысль о том, что лучше хранить контрагентов и мою фирму(фирмы) вместе:это вопрос подхода при проектировании БД.
если всё только начинается, то делайте как считаете нужным или удобным.
Delphi159А как найти покупателя- физическое лицо при розничном торговле, к розничными покупателями у нас договора же не будет и следовательно в таблице contracts записи для него нет?так для выбора поставщиков покупатели не понадобятся :)
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857279
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159и ещё если можно как различать мою фирму от других контрагентов?"Моих" фирм может быть больше одной.

Наличие накладнушки с флажком "расходная" - покупатель, наличие накладнушки типа "приходная" - поставщик. тривиальный exists для выборок, где это требуется и вперед. Хранить его нафиг никому не нужно.
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857281
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovтвой фирма никогда не является контрагентомне факт, когда "своих" больше десятка и они друг-дружке что-то продают.
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857292
Фотография zirra
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Delphi159
У нас три талбицы: TBL_FIRM , TBL_CUSTOMER и TBL_SELLER ...
В TBL_FIRM есть поле F_SELF ...
Аллесь...

--
Vladimir A.Bakhvaloff
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857295
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_Pisarevskyне факт, когда "своих" больше десятка и они друг-дружке что-то
продают.
Да даже в этом случае о "своих" фирмах имеется на порядок больше информации чем о чужих.
Она просто не влезет вся в одну таблицу. Все эти номера счетов, списки ответственных лиц,
имена, пароли, явки...
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857302
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry Sibiryakovо "своих" фирмах имеется на порядок больше информации чем о чужих.Что спокойно выносится в пристыкованную табличку, с типом связи 1-1, ну что ты аки маленький. Тут же снимается море проблем с контрагентами, когда в одной табличке живут и приходки и расходки.
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857315
miwaonline
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_PisarevskyDimitry Sibiryakovо "своих" фирмах имеется на порядок больше информации чем о чужих.Что спокойно выносится в пристыкованную табличку, с типом связи 1-1, ну что ты аки маленький. Тут же снимается море проблем с контрагентами, когда в одной табличке живут и приходки и расходки.

+1
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857335
Dimitry Sibiryakov
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Ivan_PisarevskyЧто спокойно выносится в пристыкованную табличку, с типом связи 1-1

И именно эта таблица и служит "флагом" "свой", как и договора с поставщиками. Всё правильно.
Posted via ActualForum NNTP Server 1.5
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857383
Ivan_Pisarevsky
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Dimitry SibiryakovИ именно эта таблица и служит "флагом" "свой""Свой" это периодический реквизит. Что ставит жирный крест на предложенным тобой exits-ом
Dimitry SibiryakovВсё правильно.Не пались, ты тут фишку не рубишь. ;)
...
Рейтинг: 0 / 0
не могу понять суть выражения в COMPUTED BY
    #38857551
Delphi159
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Dimitry SibiryakovDelphi159как различать мою фирму от других контрагентов?
Очень просто: твой фирма никогда не является контрагентом и ей нечего делать среди остальных.

Википедия говорит: Контрагент (лат. contrahens — договаривающийся; contra — против + agens — действующий; con-trahere взаимно противостоять) — одна из сторон договора в гражданско-правовых отношениях.
Контр- или против происходит из противопоставления одной стороны другой, в договоре каждому из обязательств сторон взаимно противостоит (корреспондирует) право другой стороны и наоборот. В гражданско-правовых отношениях под контрагентом понимается одна из сторон договора. В роли контрагента выступают обе стороны договора по отношению друг к другу. Каждый из партнёров, заключающих контракт, считается контрагентом."

Судя из этого определения "мой фирма(фирмы)" всегда является контрагентом, посколко она всегда сторона договора. Поэтому её место в таблице с другими контрагентами.

Dimitry Sibiryakov даже в этом случае о "своих" фирмах имеется на порядок больше информации чем о чужих.
Она просто не влезет вся в одну таблицу. Все эти номера счетов, списки ответственных лиц,
имена, пароли, явки...


И что? с помощью ID таблица contragents связывается с таблицами emploees, banks, у моей фирмы в этом поле есть значение,а у других будет пустой.

У меня проблеми совсем в другом:
значит есть такие таблицы:
Contr- Контрагенты-id_contr, id_contr, id_contrgrp, id_contracts,name, phones...
Contr_Add -таблица для дополнительных полей:
ContrGroups- виды контрагента- покупатель, поставщик, покупатель-поставщик
Contracts- id_contracts, id_contr, contractNo, BeginDate, EndDate, AddressIur, AddressPhys...


вопросы:
1) как отличать покупателей от поставщиков, которые вместе в таблице contragents?

я думаю создать поле в contragents и хранить например "s" для поставщиков(seller), a "c" для покупателей(clients), а 0 для "моей фирмы". Есть у кого-нибудь другое решение?

2) как отличать "мою фирму(фирмы)" от других контрагентов в таблице contragents?

я думаю создать поле "my" в contragents и записать 0 или 1. Но тогда получается я уже 2 дополнительных поля создал в contragents, что меня самому не нравится. Есть у кого-нибудь другое более "красивое" решение?

3) как реализовать лицо-контрагент является физическим(Individuals) или юридическим(LegalEntities), если у них есть разные поля- например: Passport_id, Firstname,Lastname,Birthday только для физиков и Identcode,Manager, ChiesAcc только для юридиков? В каком таблице и как создать Individuals и LegalEntities? С каким таблицом их связать? Здесь вариантов у меня совсем нет.
...
Рейтинг: 0 / 0
25 сообщений из 33, страница 1 из 2
Форумы / Firebird, InterBase [игнор отключен] [закрыт для гостей] / не могу понять суть выражения в COMPUTED BY
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]