|
|
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
_VVP_Но приведите пример практической потребности для связей мощностью больше одного узла между таблицами. может понадобиться, например: - разбить нагроможденную диаграмму из ~500 таблиц по пакетам - в целях изучения существующего проекта, в котором тяжело разобраться. - в целях выделения потоков данных, мелких модулей (например, понять как связан Person c лицевым счетом - может, например, через договор или еще как то и т.п. - такую связь сложно сразу раскрутить и представить) ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 11.08.2009, 22:26 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
_VVP_, Объясняю практическое применение этой задачи. С помощью PDM я описываю ссылочную структуру объектов 1С-систем. Сейчас возникла задача миграции группы справочников "Номенклатура" в одну централизованную систему. Необходимо понять на что повлияет такой перенос. Номенклатура как сущность связана с различными сущностями - Договоры, Типы собственности, Регионы и др. Причём в разных системах структура связей разная. Поставленная мною задача возникла из попытки понять как связаны Номенклатура и Договоры в Финансовой базе. Роман, вариант с написанием VB Script не плох. Более того, наверное, это оптимальное решение для этой задачи. Но я не могу написать такой скрипт быстро. Как хранить цепочки связей? Наверное, какие-то динамические массивы надо будет использовать. А почему не получится использовать пересечение Impact ... если промежуточных nodes больше 2-х я не понял. Ведь эти nodes будут встречаться в обоих Impact ... диаграммах. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 09:38 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Валерий aka РатиборОбъясняю практическое применение этой задачи. С помощью PDM я описываю ссылочную структуру объектов 1С-систем. Я для описание конфигураций 1С8 использую OOM, который автоматически генерируется из 1С8. Использовать PDM не стали по ряду причин. Валерий aka РатиборСейчас возникла задача миграции группы справочников "Номенклатура" в одну централизованную систему. Необходимо понять на что повлияет такой перенос. Номенклатура как сущность связана с различными сущностями - Договоры, Типы собственности, Регионы и др. Причём в разных системах структура связей разная. Поставленная мною задача возникла из попытки понять как связаны Номенклатура и Договоры в Финансовой базе. Понятно. Пропуская все возможные объяснения, утверждаю, что перенос затронет только объекты имеющие прямые ссылки на справочник номенклатуры (на переносимые объекты). Такие объекты можно увидеть в dependencies. Касаясь типовых конфигураций 1С8 также могу утверждать, что указанные объекты (номенклатура, договоры) являются сильно-связанными с остальными объектами системы (являются базовыми). Если возможно, поясните смысл "миграции" и "переноса" в контексте вашей задачи. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 10:16 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
_VVP_, под переносом справочника я понимаю изменение точки входа. Например, у справочника "Номенклатура" точка входа будет в одной центральной системе. А остальные 1С системы будут по мере необходимости загружать необходимые данные из этого справочника. По поводу, OOM. Мы тоже проводили сравнение и отказались от OOM по ряду причин. А генерацию PDM почти автоматизировали. Кстати, у меня возникла идея применить для анализа ER-диаграмм инструменарий для анализа социальных сетей. Это позволит выявить узлы "связные", "брокеры" и "пограничники" . Для анализа социальных сетей есть такие инструменты: Enronic и Xobni. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 10:36 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Валерий aka Ратибор Роман, вариант с написанием VB Script не плох. Более того, наверное, это оптимальное решение для этой задачи. Но я не могу написать такой скрипт быстро. Как хранить цепочки связей? Наверное, какие-то динамические массивы надо будет использовать. Когда мне что то подобное требовалось, я решил что проще всего записывать всё в xml (через COM и MSXML.XmlDocument). Но у меня была несколько иная задача - построить иерархию таблиц, используя информацию из reference и потом сгенерить views и stored procs. C xml мне как то удобней всегда работать. Вообщем, собирал xml, используя Collecting Parameter Design Pattern. Потом трансформил этот xml через xslt в то что мне надо. ...Можно собирать список таблиц как строку с разделителями, а потом делать split в массив. А почему не получится использовать пересечение Impact ... если промежуточных nodes больше 2-х я не понял. Ведь эти nodes будут встречаться в обоих Impact ... диаграммах. t1->t2-> t3 ->t4->t5 выбираем t1 и t5, насколько я понимаю, в impact попадает t2 и t4. t3 не попадает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 10:40 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Валерий aka Ратиборпод переносом справочника я понимаю изменение точки входа. Например, у справочника "Номенклатура" точка входа будет в одной центральной системе. А остальные 1С системы будут по мере необходимости загружать необходимые данные из этого справочника. Понятно. По моему мнению, реально работающий вариант только один - выносить справочник номенклатуры и его обвязку (на что он сам ссылается) "вручную" с дальнейшей настройкой репликации на целевые базы. Аналогично для других объектов. Валерий aka РатиборПо поводу, OOM. Мы тоже проводили сравнение и отказались от OOM по ряду причин. А генерацию PDM почти автоматизировали. Видимо у нас с вами цели выгрузки в ПД разные. Могу только сказать, что OOM очень хорошо отражает объектность из 1С8 - методы объектов, вложенные табличные части, иерархию и композицию объектов и т.д. Валерий aka РатиборКстати, у меня возникла идея применить для анализа ER-диаграмм инструменарий для анализа социальных сетей. Это позволит выявить узлы "связные", "брокеры" и "пограничники" . Для анализа социальных сетей есть такие инструменты: Enronic и Xobni. Вряд ли это так необходимо. Мне кажется, что как из пушки по мухам палить. Ведь объектов в конфигурациях не так много, как узлов в социальных сетях. Я бы предложил вам начать перенос "вручную", потом поймете реальные потребности в формальном анализаторе. Кстати, если после нескольких ручных переносов сможет определить стационарные правила формализации переноса точек входа для конфигураций 1С8 - опишите это. Подобные результаты крайне интересны. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 10:53 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
_VVP_, вот эта фраза "выносить справочник номенклатуры и его обвязку (на что он сам ссылается)" в нашем контексте неприменима. Так как, 1. В разных системах справочник с одним и тем же именем имеет разный набор реквизитов 2. В разных системах справочник с одним и тем же именем может содержать разные сущности. Например, справочник "Номенклатура" в ФБ содержит "Бухтовары". 3. Хотя я думаю можно построить концептуальную диаграмму связи сущности "Номенклатура" с остальными сущностями ("Договоры", "Типы собственности") фактически в разных системах эти связи реализованы по-разному. 4. Процесс ещё осложняется тем, что постоянно поступают заявки на модификацию справочников. 5. Если начать переносить справочник вручную, без полного анализа, то непременно что-то сломается. А это неприемлемо. В OOM диаграммах нельзя связать два конкретных атрибута двух разных объектов. Можно только просто связать два объекта. А для анализа структуры данных необходима информация о связях между атрибутами. Как вы отражаете в OOM методы объектов 1С? Вы методы 1С экспортируете в T-SQL и затем делаете реверсивный инжиниринг? С помощью программы для анализа сетей можно ещё разбить ER-диаграмму на кластеры. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 11:08 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Валерий aka Ратиборвот эта фраза "выносить справочник номенклатуры и его обвязку (на что он сам ссылается)" в нашем контексте неприменима. Так как, 1. В разных системах справочник с одним и тем же именем имеет разный набор реквизитов 2. В разных системах справочник с одним и тем же именем может содержать разные сущности. Например, справочник "Номенклатура" в ФБ содержит "Бухтовары". 3. Хотя я думаю можно построить концептуальную диаграмму связи сущности "Номенклатура" с остальными сущностями ("Договоры", "Типы собственности") фактически в разных системах эти связи реализованы по-разному. 4. Процесс ещё осложняется тем, что постоянно поступают заявки на модификацию справочников.Понятно. Фактически от вас требуется разработать общий справочник номенклатуры, удовлетворяющий все системы и реплицировать его в целевые системы. Валерий aka Ратибор5. Если начать переносить справочник вручную, без полного анализа, то непременно что-то сломается. А это неприемлемо.Наоборот, только вручную и получится. Но конечно пробуйте свой подход, глядишь что-то выгорит. Как я уже говорил, будет крайне интересно узнать результаты. Валерий aka РатиборВ OOM диаграммах нельзя связать два конкретных атрибута двух разных объектов. Можно только просто связать два объекта. А для анализа структуры данных необходима информация о связях между атрибутами.Как это нельзя связать атрибуты? Конечно можно! Ассоциация поддерживает миграцию атрибутов со всеми вытекающими последствиями - у ассоциации есть опция "Migrate Navigable Roles", которая перетаскивает атрибуты в зависимый класс. При создании объектов из 1С8 наш робот создает ассоциации по объектам с подстановкой мигрирующих атрибутов. Ссылочный атрибут получает тип класса на который он ссылается, кроме того заполняются связи миграции. Валерий aka РатиборКак вы отражаете в OOM методы объектов 1С? Вы методы 1С экспортируете в T-SQL и затем делаете реверсивный инжиниринг?Как операции класса с различной областью видимости. Валерий aka РатиборС помощью программы для анализа сетей можно ещё разбить ER-диаграмму на кластеры.Ну, наверное. Нет сейчас такой задачи, где бы потребовалось проводить анализ сетей. Вообще интересны были бы результаты. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 11:58 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
_VVP_Валерий aka РатиборКак вы отражаете в OOM методы объектов 1С? Вы методы 1С экспортируете в T-SQL и затем делаете реверсивный инжиниринг?Как операции класса с различной областью видимости.Кстати, никакого экспорта методов в T-SQL. Прямо на языке 1С8 сохраняются методы и модули. Проблемы конечно есть, в частности - если метод внутри себя явно не указывает, какие объекты метаданных он использует, восстановить связь с реально используемыми метаданными (классами, в контексте ПД) нельзя. Ну на то 1С8 и динамический язык, да в этом случае в 1С8 и автозавершение кода не работает. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 12:04 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
_VVP_, кстати, такая проблема у нас тоже есть - определить какие объекты 1С используют данный справочник/реквизит из кода модулей. Я думаю, что эту задачу надо решать путём написания синтаксического анализатора 1С-кода. Потому что использоваться объекты могут по разному - может быть явное указание наименования объекта, наименование объекта может передаваться как параметр процедуры или, например, наименование объекта может быть сохранено в переменной и обращение может идти через эту переменную. То есть, вы сам текст процедур и функций модулей объектов 1С переносите в OOM? Или вы в OOM указываете только наименования процедур и функций? Если вы переносите исходный код процедур и функций в OOM и если в этом коде явно указано к какому объекту 1С идёт обращение, то можно ли такие связи анализировать стандартными средствами PowerDesigner? А как вы описываете репликацию справочников? Используете ILM диаграммы? А используете ли вы EAM для описания общей IT архитектуры предприятия? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 13:22 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Валерий aka Ратиборкстати, такая проблема у нас тоже есть - определить какие объекты 1С используют данный справочник/реквизит из кода модулей. Я думаю, что эту задачу надо решать путём написания синтаксического анализатора 1С-кода. Потому что использоваться объекты могут по разному - может быть явное указание наименования объекта, наименование объекта может передаваться как параметр процедуры или, например, наименование объекта может быть сохранено в переменной и обращение может идти через эту переменную.Не выйдет ничего с синтаксическим анализатором. Примеры есть в общих модулях, когда одна функция используется для инициализации или обработки различных видов документов, при этом сам объект-документ передается в функцию, как параметр, а потом идет обработка по реквизитам. В этом случае, если объект во время исполнения не имеет реквизита, то система вбросит исключение. 1С8 - динамический слабо связанный язык, типы становятся известными только во время исполнения. Валерий aka РатиборТо есть, вы сам текст процедур и функций модулей объектов 1С переносите в OOM? Или вы в OOM указываете только наименования процедур и функций?И наименования и текст процедур и функций модулей. Валерий aka РатиборЕсли вы переносите исходный код процедур и функций в OOM и если в этом коде явно указано к какому объекту 1С идёт обращение, то можно ли такие связи анализировать стандартными средствами PowerDesigner?Пока это мной не реализовано. Анализировать можно, по крайне мере несколько подходов к реализации показали возможность анализа и построения связей при четком указании объекта метаданных в коде. Валерий aka РатиборА как вы описываете репликацию справочников? Используете ILM диаграммы?Никак не описываем, планы обмена обрабатывать не умею, подходов не делал. Валерий aka РатиборА используете ли вы EAM для описания общей IT архитектуры предприятия?Нет, вообще до методологии EAM пока ни один из моих заказчиков не дозрел, а у себя и подавно ничего такого нет - сапожник без сапог. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 13:45 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
_VVP_, хорошо. Следовательно, для решения задачи нахождения объектов 1С, которые используют заданный объект/реквизит из кода модулей необходимо делать не синтаксический, а семантический анализ. Эта задача близка к задаче доказательства корректности программы. То есть, потребуется некий метаязык, который будет описывать язык 1С. Можно ли посмотреть какой-нибудь пример ваших OOM диаграмм со связями атрибутов и с текстом процедур и функций? То есть, если наименование объекта указано явно, то вы для анализа пишете скрипт VB Script? А как вы экспортируете конфигурацию 1С в OOM? Есть программа "Импорт конфигурации 1С" . А я для описания репликации использую ILM диаграммы. Визуально представление получается не очень удобным. Зато добавляются нужные связи между справочниками в разных системах. Но автоматического построения ILM диаграмм репликации я пока не сделал. У нас карты обмена есть в двух видах: в виде кода и в виде справочника "КартыОбмена". Построить ILM по справочнику в принципе не сложно. Но справочник "КартыОбмена" содержит не все репликации. А сделать полный справочник "КартыОбмена" по коду карт обмена для меня сложная задача. Тут надо хорошо знать 1С код. EAM я также создал. Заказчики были довольны. Но я реализовал не все возможности, которые потенциально заложены в EAM (я ориентировался на пример, который поставляется с PowerDesigner 15). У меня есть гипотеза, что существуют программные продукты, которые решают задачу построения диаграмм, аналогичных EAM, лучше PowerDesigner. И вроде бы я встречал упоминания о них в блоге Анатолия Левенчука . Но пока до этого руки не дошли. И при построении EAM в PowerDesigner несоспоримое преимущество - это интеграция с остальными моделями. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 12.08.2009, 14:00 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Всем привет! Для изображения репликации справочников 1С я использую ILM + Impact ... Но диаграмма репликации справочников в Impact ... получается неудобочитаемой из-за наличия объектов Article. Можно ли исключить объекты Article из таких диаграмм? Или может быть есть какие-то другие подходы к изображению репликации справочников? ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 13.08.2009, 10:28 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Роман Дынник, Роман Дынник t1->t2->t3->t4->t5 выбираем t1 и t5, насколько я понимаю, в impact попадает t2 и t4. t3 не попадает. Это неверно. В данном случае на диаграммах Impact ... t3 будет присутствовать (если, конечно, его не удалить специально при формировании Impact... диаграммы). В зависимости от того какой узел выбран в качестве базового (t1 или t5) действие на узлах будет различаться (Change или Linage). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 17.08.2009, 10:51 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Есть таблица в PDM. Нужно добавить в нее 30 однотипных полей. Подскажите как с помощью VBscript облегчить себе задачу (VBscript только начинаю изучать). ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.08.2009, 10:33 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
MaxFЕсть таблица в PDM. Нужно добавить в нее 30 однотипных полей. Подскажите как с помощью VBscript облегчить себе задачу (VBscript только начинаю изучать). http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.stf.powerdesigner.eclipse.docs_15.0.0/html/advanced/advancedp318.htm Начни с простого, данный скрипт создает таблицу с одним полем и выводит ее на первую диаграмму: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 27.08.2009, 17:37 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Denis PopovMaxFЕсть таблица в PDM. Нужно добавить в нее 30 однотипных полей. Подскажите как с помощью VBscript облегчить себе задачу (VBscript только начинаю изучать). http://infocenter.sybase.com/help/index.jsp?topic=/com.sybase.stf.powerdesigner.eclipse.docs_15.0.0/html/advanced/advancedp318.htm Начни с простого, данный скрипт создает таблицу с одним полем и выводит ее на первую диаграмму: С простого надо начинать когда есть время. Я набросал на коленке то что мне нужно. Подскажите как выбрать нужную таблицу? Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. 21. 22. 23. 24. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2009, 15:10 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
MaxFЯ набросал на коленке то что мне нужно. Подскажите как выбрать нужную таблицу? По-моему только перебором, бежишь циклом по таблицам и ищешь, например, по имени. Код: plaintext 1. 2. 3. 4. 5. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 31.08.2009, 15:42 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Здраствуйте! Кто нибудь когда нить делал реверс Оракловой базы... у меня такая штука, подключаюсь к базу через Database->Database Reverse Engineering Options ... потом должно выйти окно с доступными объектами базы... окно выходит с пустым списком таблиц,представлений, связей... только есть юзаки и роли :( чё за фигня не пойму ... есть только предположения что тот юзак с помощью которого конекчусь не имеет прав нужных... заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 22.09.2009, 09:38 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Здравствуйте! Возникла задача сделать скрипт на слияние баз, т.е. в текущую базу заливать новые записи из аналогичной базы, но с другим наименованием. Новые записи необходимо заливать по условию не нахождения в исходной базе записи с таким же ключем. Пример: Код: plaintext 1. 2. 3. Текущая база - [Database], вторая база - [Database2] Таблиц огромное количество и переписывать скрипт при изменении полей/добавлении новых таблиц очень тяжело. Помогите пожалуйста сделать скрипт с помощью макросов для перебора всех таблиц и связи их с такмими же таблицами, но в другой базе данных. Имя другой базы можно задать жестко. Заранее спасибо! ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 10:23 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Alkatraz, а какое отношение Ваша задача имеет к PowerDesigner? Вам надо просто написать скрипт на T-SQL (если это SQL Server). Для перебора всех таблиц следует воспользоваться вьюшкой sys.objects, а колонки хранятся в sys.columns. Привожу несколько полезных скриптов: Код: plaintext 1. 2. 3. 4. 5. 6. 7. 8. 9. 10. 11. 12. 13. 14. 15. 16. 17. 18. 19. 20. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 10:58 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
Валерий aka Ратибор, относится тем, что надо создать процедуру слияния баз, которая бы создавалась бы вместе с базой данных и была бы отражена в модели. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 11:29 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
господа, как правильно проводить relationship, когда у меня есть таблицы и надо просто сказать, что одно из полей будет FK? как сделать, чтобы при удалении этого relationship не удалялись поля? сейчас они удаляются :( ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 24.09.2009, 17:58 |
|
||
|
Все вопросы по Sybase PowerDesigner (PD), Часть № 4
|
|||
|---|---|---|---|
|
#18+
внук тома кайта, tool->model options->model->Reference->Auto-migrate columns, снять флажок. ... |
|||
|
:
Нравится:
Не нравится:
|
|||
| 25.09.2009, 13:48 |
|
||
|
|

start [/forum/topic.php?fid=32&msg=36166749&tid=1542888]: |
0ms |
get settings: |
6ms |
get forum list: |
11ms |
check forum access: |
3ms |
check topic access: |
3ms |
track hit: |
224ms |
get topic data: |
8ms |
get forum data: |
2ms |
get page messages: |
65ms |
get tp. blocked users: |
1ms |
| others: | 217ms |
| total: | 540ms |

| 0 / 0 |
