Страница 1 из 2

Преимущество внешних атрибутов перед простым добавлением пол

Добавлено: 31 окт 2004, 02:56
Nick
Зачем нужны атрибуты, если можно просто увеличить кол-во полей в таблице (в нужной таблице) и все, и никаких сложных связей. В чем подводные камни?
Нужно поле например "e-mail" у организации, берем и добавляем поле в табличку организаций и все.

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 31 окт 2004, 09:11
Vitas
Недостатки при добавлении полей в таблицы:
1. В зависимости от таблиц и полей при конвертации на новую версию можно получить пусть и небольшие но проблеммы
2. Что бы добавить поле в таблицу надо как минимум убрать пользователей, работающих на данный момент с этой таблицей
3. Если при написании фейса разработчики указали явно, какие поля используются в фейсе, а не все из таблицы, то уже конфигуратором добавленное поле не выведешь в фейсе
и т.д и т.д. :)

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 31 окт 2004, 17:22
Nick
и т.д и т.д.
а конкретнее, интересно ж :)

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 01 ноя 2004, 08:22
Goblin
конкретно :
1) В случае добавления в новой версии поля в данную таблицу , а еще хуже индекса по этому новому полю, нужно будет выгружать эту таблицу, приводить ее в первоначальное состояние(т.е. убирать свое поле, убирать индексы по нему), затем делать переход, добавлять снова поле и индексы по нему(если были) и загружать данные из выгруженной ...
Воодушевление не пропало ?
2) Небходимо отсутсвие пользователей в базе.
При этом надо отключить журнализацию и почистить журнал, т.к. структура данных мемо-поля в записях журнала по модифицируемой таблице будет отличаться до и после модификации ...
Все еще хочется ?

Все эти радости от того , что в ресурсах, индексах, журнале и вообще в Атлантисе поле определяется не по имени, а смещению и длине в теле записи - тяжкое наследие Pervasive, который в своем API не понимает, что такое поле, а только лишь запись ...

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 01 ноя 2004, 14:47
Nick
Да я и не делал так никогда, меня атрибуты не напрягают уж очень. Просто друг доказывал простоту добавления обычного поля. А я так и знал, что все эти атрибуты придумали не с проста ;)
Cпасибо за разъяснения :)

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 02 ноя 2004, 08:11
hope
Только и с атрибутами беда - при удалении запсиси, к которой были введены атрибуты, атрибуты остаются "висячими". Целостность не поддерживается в Галактике в принципе.

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 02 ноя 2004, 09:10
Goblin
Надя, в принципе ты не права ...
целостность поддерживается и еще как ...
просто лень разработчикам ее добавлять ...

Например
create table MyRefTable ...ля-ля-ля...
(
MyRefField: ref(MyTable) restrict
);

создаст в твоей табле поле типа comp, которое будет ссылаться на Nrec таблы MyTable(уникальный,суррогатный ключ по Nrec в MyTable обязателен), при этом не даст тебе удалить из нее запись, если в MyRefTable есть ссылающиеся на нее ...
и при просмотре словаря когда ты зайдешь в MyTable в "Ссылки на таблицу" - то увидишь сопоставление Nrec>>.MyRefTable.MyRefField.
Это для непереключаемых(простых) ссылок ...

А для переключаемых(например, КАУ в оборотах, внешние атрибуты к таблице) надо пожестче контролировать программеров - при удалении записи вытащить инфу к чему она цепляется всегда можно и проверить есть ли зависимые- тоже ... но как правило программеры ленятся или просто надеются на идеального пользователя, коих в природе не бывает :)

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 02 ноя 2004, 20:40
ecasoft
На самом деле лучше действительно забыть о добавлении полей в таблицы. Одни проблемы от этого. Таблицы свои добавлять - это нормально.

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 03 ноя 2004, 12:31
snoopy
Косякин Игорь, а как добавить свою таблицу???
Может кто знает подскажите пожалуйста :)

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 03 ноя 2004, 15:18
Goblin
RTFM ...

В доках rpp.pdf найди, там все есть ...
для своих таблов используй диапазон кода таблиц с 31500 по 31999, они отданы на пользовательское творчество ...

Кстати, кто-нить объяснить в конце концов , почему 31999 - максимальный код таблы ??? это же word, беззнаковое двухбайтовое целое, которое до 65535 идет ... ???

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 09 ноя 2004, 12:48
ecasoft
На счет создания своих таблиц лучше посмотреть и поковыряться в файлах конвертора...там и создание таблиц и добавление новых индексов...
Можно по контексту create table найти файлы.

Компилируется это все хозяйство VIP-om. Он входит в версию до 585 в поставку бесплатно.

С уважением, Игорь

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 09 ноя 2004, 14:18
Goblin
Он и после входит бесплатно, только без лицензии эта корова не даёт молока :)

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 09 ноя 2004, 14:23
ecasoft
Кстати, я думаю таблицы эта корова должна все же бесплатно создавать..эта она ресурс не создает, а таблицы думаю должна...

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 11 ноя 2004, 10:26
Max_Fin
А ведь можно и без VIPа обойтись, сразу же в SUPPORTе запросик написать. ;)

Re: Преимущество внешних атрибутов перед простым добавлением

Добавлено: 12 ноя 2004, 12:17
ecasoft
Я большую часть всего делаю ВИПом...и формы компилирую и интрерфейсы и создаю таблицы и т.д. :) ВИП у меня лицензионный..поэтому проблем нет.

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