Генерация описаний файлов/таблиц в multi-dll проекте

Clarion, Clarion 7

Модератор: Дед Пахом

Правила форума
При написании вопроса или обсуждении проблемы, не забывайте указывать версию Clarion который Вы используете.
А так же пользуйтесь спец. тегами при вставке исходников!!!
kreator
Ветеран
Сообщения: 2866
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение kreator » 23 Август 2018, 12:11

Обнаружил, что Кларион генерит описания таблиц. А в настройках App соответствующая галка отсутствует. Вроде не мешает. Но остаётся чувство, что при изменении словаря нужно компилировать все dll-ки. Зачем генерятся описания? Или зачем нужна соответствующая галка в свойствах App? С10, если что. Думаю и ранее было так.
We are hard at work… for you. :)

Yufil
Ветеран движения
Сообщения: 1008
Зарегистрирован: 16 Май 2006, 13:34
Контактная информация:

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Yufil » 23 Август 2018, 13:36

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

К счастью, СW10 позволяет перекомпилировать solution с полпинка...

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3517
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Игорь Столяров » 23 Август 2018, 16:54

Позвольте не согласиться …
Если в таблица (и связанные с ней таблицы) не используются в DLL - то её описание не генерится в DLL.
Проверил на нескольких проектах. Однозначно.
И не надо регенерить DLL, если меняются не используемые в ней таблицы. Разве, что в качестве фитнеса ... ;)
Картинку с настройками таблиц в DLL - прилагаю.

Рис1.jpg

Но ! У меня не SQL .... хотя разницы быть не должно.
«V» значит Вендетта !

Yufil
Ветеран движения
Сообщения: 1008
Зарегистрирован: 16 Май 2006, 13:34
Контактная информация:

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Yufil » 23 Август 2018, 19:36

Что проще - сгенерить и откомпилить на всякий случай или выяснять, нужно ли это? А потом долго и мучительно искать DLL, у которой описание структуры данных неадекватно...

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3517
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Игорь Столяров » 23 Август 2018, 20:05

Yufil писал(а):
23 Август 2018, 19:36
на всякий случай или выяснять
Действовать надо по обстановке, конечно. :)
Здесь главный вопрос в том, что при отключенной опции "Generate All Files .." в DLL не должно быть описаний таблиц,
которые в ней не используются ... или они привязаны в APP неправильно (например к Source процедурам). Как-то так ...
«V» значит Вендетта !

Yufil
Ветеран движения
Сообщения: 1008
Зарегистрирован: 16 Май 2006, 13:34
Контактная информация:

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Yufil » 23 Август 2018, 23:37

Но тогда приходится решать вопрос - какие именно app надо пересобрать после изменения словаря. Учитывая всякие Referential Integrity и разнообразные ссылки на поля и структуры записи. Не, если app несколько и словарь изменился - то строго обязательная пересборка. Дабы и во избежание!

Аватара пользователя
RaFaeL
Ветеран
Сообщения: 711
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Контактная информация:

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение RaFaeL » 24 Август 2018, 9:32

В чем проблема все пересобрать при изменении словаря? Так часто меняете словарь?
Кстати, если словарь приходится часто менять, значит в организации программы что-то не то

kreator
Ветеран
Сообщения: 2866
Зарегистрирован: 28 Май 2009, 14:54
Откуда: Москва

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение kreator » 24 Август 2018, 10:06

Игорь Столяров писал(а):
23 Август 2018, 16:54
Если в таблица (и связанные с ней таблицы) не используются в DLL - то её описание не генерится в DLL.
Проверил на нескольких проектах. Однозначно.
Неоднозначно! Поэтому и вопрос. Есть маленькая dll-ка (с ограниченным функционалом, очень легко проверить), где вижу описания таблиц, заведомо неиспользуемые в ней. Кларион генерит описания абы как. Вернее - не понимаю логики генерации. Можно предположить, что ещё генерятся таблицы по связям, но тогда бы практически весь словарь там был бы. А это не так.
RaFaeL писал(а):
24 Август 2018, 9:32
В чем проблема все пересобрать при изменении словаря? Так часто меняете словарь?
Кстати, если словарь приходится часто менять, значит в организации программы что-то не то
Словарь меняем достаточно часто. И dll многовато. Функционал меняется и добавляется постоянно. Таблицы, поля и т.д. на перспективу не создаём. Вы создаёте? Другой вопрос - организация выпуска обновлений. А есть в природе примеры работы с Solution? Как-то пробовал в него включить несколько App, при компиляции ругань вообще непонятно откуда и непонятно на что. Создал бы общий Solution, пересобирал бы всё сразу, когда надо. Есть ещё вопрос по очерёдности компиляций dll. С этим как?
We are hard at work… for you. :)

Аватара пользователя
RaFaeL
Ветеран
Сообщения: 711
Зарегистрирован: 24 Март 2009, 17:59
Откуда: НН
Контактная информация:

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение RaFaeL » 24 Август 2018, 10:14

У нас к каждому скажем так основному объекту прилагается табличка вида "номер объекта - номер доп. параметра - значение доп. параметра", пользователи сами туда добавляют что хотят, поэтому словарь меняем только если уж ну очень надо (последний раз меняли год назад). По компиляции в С10 не подскажу .у нас С63, для него при пересборке используем некую утилиту CMP60, там порядок задается

Yufil
Ветеран движения
Сообщения: 1008
Зарегистрирован: 16 Май 2006, 13:34
Контактная информация:

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Yufil » 24 Август 2018, 11:45

kreator писал(а):
24 Август 2018, 10:06
Игорь Столяров писал(а):
23 Август 2018, 16:54
Если в таблица (и связанные с ней таблицы) не используются в DLL - то её описание не генерится в DLL.
Проверил на нескольких проектах. Однозначно.
Неоднозначно! Поэтому и вопрос. Есть маленькая dll-ка (с ограниченным функционалом, очень легко проверить), где вижу описания таблиц, заведомо неиспользуемые в ней. Кларион генерит описания абы как. Вернее - не понимаю логики генерации. Можно предположить, что ещё генерятся таблицы по связям, но тогда бы практически весь словарь там был бы. А это не так.
RaFaeL писал(а):
24 Август 2018, 9:32
В чем проблема все пересобрать при изменении словаря? Так часто меняете словарь?
Кстати, если словарь приходится часто менять, значит в организации программы что-то не то
Словарь меняем достаточно часто. И dll многовато. Функционал меняется и добавляется постоянно. Таблицы, поля и т.д. на перспективу не создаём. Вы создаёте? Другой вопрос - организация выпуска обновлений. А есть в природе примеры работы с Solution? Как-то пробовал в него включить несколько App, при компиляции ругань вообще непонятно откуда и непонятно на что. Создал бы общий Solution, пересобирал бы всё сразу, когда надо. Есть ещё вопрос по очерёдности компиляций dll. С этим как?
Так несколько app и надо включать. Открываешь закладку Solution Explorer и добавляешь то, что надо. А дальше открываешь закладку Applications ( если нет, то надо открыть ),
там справа сверху есть две кнопочки "Modify generation order " и "Sort By Generation Order". Вот они и позволяют ручками задать зависимости APP и отсортировать. И там же сверху удобные кнопочки типа Make All или Generate All, всё достаточно удобно...

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 808
Зарегистрирован: 06 Ноябрь 2014, 12:48

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение finsoftrz » 24 Август 2018, 12:40

Была известная раньше и канувшая ныне украинская фирма, писавшая финансовый софт на кларионе. Если мне память не изменяет, у них все на 7 таблицах крутилось. Есть планка для роста. :-)
А вообще, проблем с изменениями в словаре, быстрой пересборкой и автоматическими обновлениями у клиентов давно нет, в том числе и на clarion6.
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3517
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Игорь Столяров » 24 Август 2018, 12:49

finsoftrz писал(а):
24 Август 2018, 12:40
Если мне память не изменяет, у них все на 7 таблицах крутилось.
Я лет десять назад проходил собеседование в одну софтверную фирму, так у них торговая программа была на 3-х таблицах в SQL:
1. Настройки и юзеры;
2. Товары и контрагенты (!!!) - в ней же классификаторы ассортимента, единицы измерения, банки контрагентов и т.д.
3. Документы (вообще все, включая содержание накладных, кассу, выписки из банка и т.д.).

На собеседовании они просили написать одним запросом отчёт за период по продажам товаров контрагентам. Жесть ! :idied:
«V» значит Вендетта !

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 808
Зарегистрирован: 06 Ноябрь 2014, 12:48

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение finsoftrz » 24 Август 2018, 13:02

И что, написали? :-)
Рязань решает.

Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 3517
Зарегистрирован: 07 Июль 2005, 9:19
Откуда: г. Ростов-на-Дону

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение Игорь Столяров » 24 Август 2018, 13:03

finsoftrz писал(а):
24 Август 2018, 13:02
И что, написали?
Легко ! :) Но судя по тому, что сижу тут с Вами - неправильно. :idied:
«V» значит Вендетта !

Аватара пользователя
finsoftrz
Ветеран
Сообщения: 808
Зарегистрирован: 06 Ноябрь 2014, 12:48

Генерация описаний файлов/таблиц в multi-dll проекте

Сообщение finsoftrz » 24 Август 2018, 13:11

Сейчас придет Рафаэль и скажет, вы все трупы... Зато у нас весело, не правда ли? :-)
Рязань решает.

Ответить