Application не видит словарь.

Clarion, Clarion 7

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

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

Application не видит словарь.

Сообщение kreator »

С8. Столкнулся с такой проблемой. Измененяю файл словаря в свойствах application. Сохраняю. Закрываю проект. Открываю. Вот такое сообщение.
1.jpg
Ну и данных в application нет. Хотя словарь открывается и через app и так.
Никто не сталкивался?
We are hard at work… for you. :)
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Re: Application не видит словарь.

Сообщение Дед Пахом »

Ну а что Вы хотите? Поменяли словарь - поменялись все внутренние идентификаторы словарных переменных, а в структуре окон эти идентификаторы связывают контролы со словарём.
С уважением, ДП
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Re: Application не видит словарь.

Сообщение Игорь Столяров »

Здесь видимо вопрос немного о другом ...

Действительно в C6 была операция "Application -> Change Dictionary" которая позволяет производить замену словаря для приложения.
Удобно, например если для разных сборок программы, используются словари с разными драйверами БД ...
Как это сделать в C7 / C8 я не знаю ..... Такой операции нет.
За теми кто отстал - не возвращаться. (С) Кодекс
kreator
✯ Ветеран ✯
Сообщения: 4984
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Re: Application не видит словарь.

Сообщение kreator »

Да в том-то и дело, что изменения в словарях минимальные. А не определяются все таблицы.
1.jpg
В клаше где-то глюк.
Я гарантирую на 100%, что имена таблиц - одинаковые. Возможно, Аппликуха понимает словарь не по именам таблиц, а по каким-то идентификаторам?
We are hard at work… for you. :)
Аватара пользователя
Игорь Столяров
Ветеран движения
Сообщения: 7378
Зарегистрирован: 07 Июль 2005, 10:19
Откуда: г. Ростов-на-ДоМу
Благодарил (а): 13 раз
Поблагодарили: 48 раз

Re: Application не видит словарь.

Сообщение Игорь Столяров »

kreator писал(а):Возможно, Аппликуха понимает словарь не по именам таблиц, а по каким-то идентификаторам?
Есстественно. Выгрузи словарь в TXD и увидишь, что для каждой таблицы, ключа, поля есть свой цифровой ID.
Поэтому простая замена словарей возможна, только если в них полностью соответствуют ID всех элементов словаря.
А вот кстати, упомянутая мною ниже операция замены словаря в C6 как раз делает сопоставление по именам.
За теми кто отстал - не возвращаться. (С) Кодекс
Аватара пользователя
Дед Пахом
Старичок
Сообщения: 3133
Зарегистрирован: 07 Июль 2005, 16:51
Откуда: Москва, Россия
Благодарил (а): 10 раз
Поблагодарили: 28 раз
Контактная информация:

Re: Application не видит словарь.

Сообщение Дед Пахом »

Ну вот, а теперь перечитываем пост от 12 Сентябрь 2011, 19:46
С уважением, ДП
kreator
✯ Ветеран ✯
Сообщения: 4984
Зарегистрирован: 28 Май 2009, 15:54
Откуда: Москва
Благодарил (а): 7 раз
Поблагодарили: 20 раз

Re: Application не видит словарь.

Сообщение kreator »

Нашёл решение!

Код: Выделить всё

Summary

When you replace a data dictionary, you must take the following steps to preserve the internal relationships between the application and the data dictionary: first, create a text application file (.TXA), then update the data dictionary, finally create a new application (.APP) from the text application file (.TXA).

By using the Dictionary Synchronizer to update the Qwktutor.dct (as opposed to simply replacing it with a copy of the Tutorial.dct), you are able to see exactly which items changed and you can intelligently manage those changes; if both dictionaries have changed, you can incorporate the changes from both dictionaries by synchronizing each dictionary with the other; finally, the Dictionary Synchronizer can generate a Clarion program to convert your existing data to the new data format.
Пока, вроде, прокатило! Хотя и дурость это, считаю.
Всем спасибо!!!
We are hard at work… for you. :)
Ответить