|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
П-Л, а у Вас данные о "физических лицах" и данные о "юридических лицах это разные таблицы? Или разные поля в одной таблице? ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2013, 19:02 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Одна щирокая таблица. Я стараюсь не делать наследования на таблицах, держу более-менее однообразные данные в широких. Так проще (практичнее) но менее реляционно-правильно и архитектурно изыскано. Лучше не ты, давно уже переписываемся через форум. ... |
|||
:
Нравится:
Не нравится:
|
|||
15.04.2013, 20:42 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Программист-Любитель ...но менее реляционно-правильно и архитектурно изыскано. Офигеть, и после такого он всем втирает, что использование полей-подстановок в таблицах - зло, а сам плюёт на основополагающие принципы. Хад ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 08:28 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Программист-ЛюбительОдна щирокая таблица. Я стараюсь не делать наследования на таблицах, держу более-менее однообразные данные в широких. Так проще (практичнее) но менее реляционно-правильно и архитектурно изыскано. а от чего она поширела? как я бы сделал совмещение "более-менее однообразные" пол я -реквизиты (фио и тд | организация и тд)физ(0)/юр(1)иванов ... и остальное ...0рога и копыта ... и остальное ...1 если что, то можно не признак а ссылку на справочник, тогда + справочник ну да, там будут лишние поля для одних и других (для юр - год рождения, для физ - юр.адрес) - за счет этого поширела? вроде все реляционно правильно нет? зы: уверен , ты так и делаеш ) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 09:10 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
ЫLL HEAD пол я -реквизиты (фио и тд | организация и тд)физ(0)/юр(1)иванов ... и остальное ...0рога и копыта ... и остальное ...1 вопрос не из области баз данных. А что, "юридические лица" это обязательно названия организаций? У организации не может быть записан владелец, или директор в поля имя, фамилия... ? ...Я просто не в курсе если что. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 09:15 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Изерлонер, У организации может быть не один 'владелец'. Юр. лица - да, обязательное название организации. Как у них оформлять директора и т. д. - это зависит от задач. зы. я это делаю, как не старается делать П-Л :) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 09:59 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Изерлонер, за этим вам надо в свой отдел кадров (по физ лицам) и в бухгалтерию (по юр лицам) и как можно скорее. не то сейчас понапишете горы кода, а потом переписывать , ибо в основе будет ошибка ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 10:04 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
насчет владельца/директора в качестве названия организации - не смеши местную публику завтра сменятся владельцы или директор - и чо? ))) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 10:07 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Акс-кваксПрограммист-Любитель ...но менее реляционно-правильно и архитектурно изыскано. Офигеть, и после такого он всем втирает, что использование полей-подстановок в таблицах - зло, а сам плюёт на основополагающие принципы. Хад Когда понимаешь, что и зачем делаешь - это не 'плюёшь', а грамотно используешь свои знания. Большинство народа, которому П-Л 'втирает', ещё не достигли его степени просветления и это большинство надо беречь от соблазна пойти по пути зла. Проще это сделать запретом ;) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 10:16 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
ЫLL HEADнасчет владельца/директора в качестве названия организации - не смеши местную публику завтра сменятся владельцы или директор - и чо? ))) + владельцев может быть несколько + "владельцем" может быть государство ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 10:50 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
qwerty112+ "владельцем" может быть государствопутина в название организации ... кажется это надолго ) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 10:53 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
ЫLL HEADqwerty112+ "владельцем" может быть государствопутина в название организации ... кажется это надолго ) ) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 10:55 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
О картотеке контрагентов/клиентов/физиков/юриков... На эту тему можно сломать лес копий, сделать кучу схем БД и все будут правильные. Самая первая/главная проблема, которая встает практически сразу - две разные таблицы под физиков/юриков или одна. Я бы исходил при выборе из следующих рассуждений. Если приложение делается для маленькой фирмы, которая заключает договора, продает, выписывает счета и физикам и юрикам вперемежку, и они для нее приблизитлеьно равны, то лучше в одной таблице. Можно использовать поля Name1 Name2 Name3 для физиков - Имя Фамилия Отчество, для юриков - Краткое название, Названия для отчетности, Полное название по уставу. Чаще, как мне кажется, лучше разносить физиков и юриков по разным таблицам. Это обязательно придется делать, если для одной организации надо хранить списое ее сотрудников и т.п. Чуть позже напишу про возможные спобы реализации картотеки контрагентов с некоторыми финансово-учетными граблями. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 18:22 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
П-ЛЧаще, как мне кажется, лучше разносить физиков и юриков по разным таблицам. Это обязательно придется делать, если для одной организации надо хранить списое ее сотрудников и т.п. Кто мешает использовать вьюшки для представления физиков-юриков? У меня контрагенты суть есть одна таблица. С признаками "Клиент", "Поставщик", "Персонал". Удобно тем, что 1 и тот же контрагент может выступать в разных ипостасях. Получать зарплату как сотрудник и быть поставщиком товаров, например. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 19:42 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
OdessП-ЛЧаще, как мне кажется, лучше разносить физиков и юриков по разным таблицам. Это обязательно придется делать, если для одной организации надо хранить списое ее сотрудников и т.п. Кто мешает использовать вьюшки для представления физиков-юриков? У меня контрагенты суть есть одна таблица. С признаками "Клиент", "Поставщик", "Персонал". Удобно тем, что 1 и тот же контрагент может выступать в разных ипостасях. Получать зарплату как сотрудник и быть поставщиком товаров, например. я так же пришёл к такому решению. как вариант признаки можно хранить в разрядах(битах) больших целых. если есть стока вариантов. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 20:06 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
единственно для хранения реквизитов желательно делать разные таблицы, уж очень разное количество реквизитов у юриков и физиков ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 20:11 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Я с самого начала предупредил, что реалий воплощения картотеки контрагентов на разного количества таблиц может быть много и каждое будет оправдано своими бизнес-кейсами. Разделение физиков и юриков по разным таблицам я описываю применительно к крупному корпоративному проекту, где такое решение я считаю наиболее подходящим: Физики и юрики играют разные роли в разных кейсах. На картотеку организаций опираются очень важные сущности - договора, сделки и т.п. Запросы по ним уже получаются достаточно тяжелыми, лишние записи о физиках в тех же таблицах уменьшили быстродействие, количество физиков в крупной организации исчисляется многими тысячами. У физиков хватает своих замомрочек - должности, назначения и пр., количество кадровых записей о физиках таково, что лишние записи в таблице тоже понапрасну просаживали бы ресурсы сервера. Итак, для корпоративного учета я считаю лучше разделять физиков и юриков по разным таблицам. Что еще надо учитывать при построении картотеки контрагентов. Она должна быть очень хорошей. Образцово показательной. Она используется в очень многих функциональных блоках, автоматизация почти всех видов бизнеса делается с интенсивным использованием данных по клиентам, контрагентам, постащикам и т.п. Далее сказанное, наверное, по большей части будет относится к учетным системам финансового толка (что знаю - о том пою, о чем не знаю - не пою). Обязательно хранение и ИСПОЛЬЗОВАНИЕ информации о взаимоотношениях компаний парент-чаилд. Сделки заключаются с конкретным юрлицом, а вот риски висят на всем конгломерате компаний, образующих холдниг. Поэтому при учете лимитов как правило все сделки, относящиеся к одному холдингу суммируются. Гикнется голова - все дочки полетят следом. Очень сильно можно сыграть на парент-чаилд относительно себя, любимых. Подавляющее большинство финансовых программ позволяет определить одну компанию как МЫ, НАША компания, все остальные становятся второй, другой строной в сдедках/договорах. И тогда неизбежно возникают проблемы при учете от лица нескольких организаций, имеющих одного владельца, входящих в один холдинг. Ведем учет от лица компании А. МЫ, А, разместили депозит компании Б. Но компания Б - тоже другие МЫ, для нее надо учитывать симметичный заем на эту же сумму. Любая сделка между двумя своими компаниями должна учитываться дважды, зеркально. Я видел разной степени кривости попытки такого решения в рахных системах. Обычно заводится одна сделка от лица компнании А, а вторая сделка генерится зеркально по нажатию специальной кнопки. Но потом они никак больше не синхронизируются и не отслеживаются. В худшем случае поднимется несколько инстансов программы, по одному для кждой комнании холдинга и потом начинается жутчайший кошмар разъезжания и синхронизации общих данных. Накручиваются суперпупер джобы и адаптеры... А всей этой херни можно было с самого начала избежать, если изначально заложить правильную модель в картотеку контрагентов. Если определить МЫ как холдинг, содержащий разные юридически полноценные компании, или заложить в систему возможность наличия (и соответвующей обработки признака МЫ более чем у одной компании). Тогда любую сделку можно регистрировать один раз, с указанием Сторона1 (А, МЫ) и Сторона2 (Б, тоже МЫ). Заплатить за это придется программным удвоением сделок при вставании на точку зрению любой компании. Продолжение следует ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 20:55 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Структура компаний, филиалы и т.п. Для своей компании наверняка придется хранить информацию о структуре. Во-первых, организация может иметь более-менее самостоятельные географически распределенные узлы, да еще мнгоуровневые типа Штаб-квартира-Региональный центр-Филиал-Территориальный офис. Во-вторых, Штаб-квартира и крупные территориальный узлы могут иметь развитую учрежденческую структуру Департаменты-Управления-Отделы... ОБЯЗАТЕЛЬНО!!! Графическая визуализация отношений парент-чаилд в виде дерева. Сколькоя видел систем, где окошечко парент на карточке организации было, но представлять всю эту структуру надо было исключительно в голове! Второе сразу тесно пересекается с должностным расписанием. Если необходимо хранить и обрабатывать информацию о документах, договорах - без этого не обойтись. Причем хранить и использовать придется данные включая даже падежи, иначе не составить строку "Господину Иванову И. И. Главному помошнику Старшего начальника Бестолкового департамента Ухрюпинского филала ООО Рога и копыта". Кадровую информацию я тоже люблю хранить с отступлением от строгости реляционных постулатов. Вместо ДатаНазначения ФИО Должность Подразделение я предпочитаю хранить ДатаС ДатаПО ФИО Должность Подразделение. При этом надо следит чтобы ДатаС следующего назначения строго была равна ДатаПО предыдущего, но зато все выборки получаются мухой, простейшим BETWEEN. Надо/полезно хранить информацию о подчиненности должностей или конкретных сотрудников друг другу. Надо иметь возможность вытаскивать руководителей подразделений. Часто - главных бухгалтеров или руководителей по определенным направлениям бизнеса. Географическая привязка. Можно использовать полноценный кладр, можно по-проще - стринговые тупые адреса и отдельную привязку к городам/странам. Всяческие коды. Можно сделать справочник типов кодов и по-еавешному заталкивать туда ИНН, КПП, ОГРН, ОКВЭД... Можно наращивать столбцы таблицы контрагентов при появлении новых типов кодов. У каждого свои плюсы и минусы, если только показывать на экране в виде удобной для прораммиста форме, то первый способ лучше. Если интенсивно использовтать кодовые атрибуты в формах, отчетах, документах, то я выбираю второй. Бозовая картотека контрагентов должна обходиться в пару дюжин таблиц. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 21:22 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Программист-ЛюбительА всей этой херни можно было с самого начала избежать, если изначально заложить правильную модель в картотеку контрагентов. Если определить МЫ как холдинг, содержащий разные юридически полноценные компании, или заложить в систему возможность наличия (и соответвующей обработки признака МЫ более чем у одной компании). Тогда любую сделку можно регистрировать один раз, с указанием Сторона1 (А, МЫ) и Сторона2 (Б, тоже МЫ). Заплатить за это придется программным удвоением сделок при вставании на точку зрению любой компании. УЖАС, сейчас люди начитаются и наделают костылей в своих программах. Для двух разных компаний одно и то же событие или объект может нести СОВЕРШЕННО разное назначение, вестись совершенно другим способом и более того, представлено совершенно другими документами! Даже элементарные операции по оплате договора -- это совсем разные документы для двух сторон. Или простая нумерация входящей корреспонденции с договорами и счетами. Я уж не говорю про персонал, работающий независимо друг от друга. Поэтому правильное решение для группы компаний, работающие каждый в своей собственной логической базе -- раздельный учет и регистрация документов под каждую сторону отдельно. В качестве бонуса можно лишь настроить связи двуг с другом, чтобы была возможность находить концы и формировать специфические отчеты. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 21:29 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Программист-ЛюбительИтак, для корпоративного учета я считаю лучше разделять физиков и юриков по разным таблицам. ну да... а еще по разным таблицам одних юриков и совсем других юриков одних физиков и совсем других физиков... и кроме того и еще и еще. особенность корпоративного учета - он позволяет привлекать дополнительные ресурсы, не входящие в информационную учетную систему. просто корпоративная система учета не ограничивается учетом в какой либо одной (или нескольких) информационной системе. корпоративная система учета это комплекс мероприятий направленных для учета фактов хозяйственной деятельности. а не комплекс любых, самых навороченных и продвинутых, информационных систем... ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 21:35 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
JaDiИзерлонерПодскажите пожалуйста, а есть какие– нибудь серьезные учебники/ресурсы по разработке интерфейса баз данных? Хотелось бы что то почитать с системным подходом. Схемы построения взаимодействия оператора с приложением, для разных задач, внесения данных в базу, вывода на экран и в печать и т.д. разграничение задач. ...С этим у меня почему то проблемы. Каждая формочка даётся тяжело, не с первого раза. Сделаю и только тогда вижу что тут этого не учел, здесь другого, в результате всё очень криво и не удобно. С пятого десятого раза что то рабочее получается, но с бОльшим охватом, со всей системой всё равно затык. 1. Прочитать библию разработчика интерфейсов "Windows User Experience Interaction Guidelines": http://www.microsoft.com/en-us/download/details.aspx?id=2695 Если лень вчитываться, то программа-минимум -- хотя бы ознакомиться с картинками вида "плохо-хорошо", а также прочитать о назначении стандартных элементов интерфейса; 2. Ознакомиться с популярными базами и CRM/ERP/ETC системами, на каких принципах они работают и в каком виде. Самый действенный способ -- берем 1С и копируем решения из нее -- с ними никогда не прогадаешь; 3. Нарабатывать опыт ИСПОЛЬЗОВАНИЯ своих же приложений. Или как-минимум -- постоянная обратная связь от заказчика. Иначе все остальное -- не поможет, и из под пера будут выходить красивые поделки, которыми невозможно пользоваться.+ имхо интерфейс а-ля 1с привычный(и потому мб даже удобный) юзеру как бы - 'неизбежен' при 'хорошей' структуре БД (пусть несколько денормализованной....) мастер->чайлд в 1c - шапка -> не помню чо ...))) форма-список->карточка слева тривью->список->карточка прям у П-Л подглядели...)) имхо ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 21:57 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
JaDiДля двух разных компаний одно и то же событие или объект может нести СОВЕРШЕННО разное назначение, вестись совершенно другим способом и более того, представлено совершенно другими документами! Даже элементарные операции по оплате договора -- это совсем разные документы для двух сторон. Или простая нумерация входящей корреспонденции с договорами и счетами. Я уж не говорю про персонал, работающий независимо друг от друга. Я имел в виду управлеческий финансовый учет сделлк-договоров. Причем он физически ведется в одном месте. Договор (сделка) между двумя сторонами - это один документ. Условия в нем совершенно тождественно-симметричны для двух сторон. Одна и та же дата, один и тот же срок, ставка. Только одна сторона дает взаймы (размещает), актив а другая - берет взаймы, пассив. В этом смысле последствия для учета должны быть симметричными. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 22:05 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
Программист-ЛюбительJaDiДля двух разных компаний одно и то же событие или объект может нести СОВЕРШЕННО разное назначение, вестись совершенно другим способом и более того, представлено совершенно другими документами! Даже элементарные операции по оплате договора -- это совсем разные документы для двух сторон. Или простая нумерация входящей корреспонденции с договорами и счетами. Я уж не говорю про персонал, работающий независимо друг от друга. Я имел в виду управлеческий финансовый учет сделлк-договоров. Причем он физически ведется в одном месте. Договор (сделка) между двумя сторонами - это один документ. Условия в нем совершенно тождественно-симметричны для двух сторон. Одна и та же дата, один и тот же срок, ставка. Только одна сторона дает взаймы (размещает), актив а другая - берет взаймы, пассив. В этом смысле последствия для учета должны быть симметричными. Даже в бухгалтерии эти данные по разным проводкам пойдут для двух организаций и ни о какой симметричности речи уже не пойдет. Чем дальше будем отходить от точки заключения договора (или создания другого "взаимного" документа) -- тем больше будет расхождений, более того, все это будет накапливаться в системе, а снежный ком костылей для учета и выборки таких вот данных будет лишь увеличиваться. То, что информация одна и та же -- не всегда означает, что ее стоит хранить как одно целое. Думаю, лучше получить денормализацию данных, но стройную и логическую модель, чем нормализованные таблицы с общими данными, но кучей костылей и дополнительного кода для их обработки. ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 22:28 |
|
Разработка интерфейса.
|
|||
---|---|---|---|
#18+
ОФФ: Odess... У меня контрагенты суть есть одна таблица. С признаками "Клиент", "Поставщик", "Персонал". ... Признаки "Клиент", "Поставщик", "Персонал" не нужны. В таблице "контрагенты" они не имеют смысла. :) ... |
|||
:
Нравится:
Не нравится:
|
|||
16.04.2013, 22:34 |
|
|
start [/forum/topic.php?fid=45&msg=38226923&tid=1613234]: |
0ms |
get settings: |
9ms |
get forum list: |
13ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
69ms |
get topic data: |
10ms |
get forum data: |
2ms |
get page messages: |
61ms |
get tp. blocked users: |
1ms |
others: | 337ms |
total: | 510ms |
0 / 0 |