18.02.2003, 19:11 | #1 |
Участник
|
Обновление существующего приложения до SP5
При обновлении приложения с SP4 до SP5 возникла проблема.
В SP4 была изменена форма "Заказы" (добавлены кнопки, немного изменился дизайн). При обновлении до SP5 все что было изменено в форме "Заказы" осталось, но новые кнопки, которые должны установиться из SP5 не появляются. Если сравнить слои (наш слой CUS, а SP5 устанавливается в DIS), то видно что новые кнопки из SP5 находятся в DIS. Значит получается что наш слой перекрывает его. Как с этим бороться?
__________________
Сергей |
|
18.02.2003, 19:35 | #2 |
Moderator
|
А как Вы обновляли.
Если не ошибаюсь, это рекомендуется делать так: создать новую БД, поставить заново приложение, поставить SP5, запустить Аксапту и соответственно процесс компиляции и синхронизации, затем загрузить пакет с Вашими модификации и наконец импортировать все данные. Если я не прав - пусть меня поправят. |
|
18.02.2003, 19:46 | #3 |
Banned
|
Знаете, что такое обновление кода?
Вот как раз ЭТО и надо делать: используя функцию сравнения элементов по слоям, ручками переносить в свой CUS изменения из DIS. |
|
19.02.2003, 11:45 | #4 |
Участник
|
To Андре
Так и делаем. Но проблема следующая, в SP4 в форме заказов нет кнопки "Счет фактура", а в SP5 ечть. После импорта наших дороботок этой формы кнопка 'Счет фактура" считается удаленной в слое CUS. Что с этим делать и как найти все такие баги?
__________________
Сергей |
|
19.02.2003, 11:55 | #5 |
Участник
|
Насколько я понимаю, кроме ручного способа добавления именно новых кнопок нет. Тут есть два пути. Либо руками добавить кнопку, назвать ее, как она называется в новой версии, потом снова сравнить слои и задать нужные свойства. Либо залезть в дис-слой и опять же руками перетащить контролку в свой.
|
|
19.02.2003, 12:11 | #6 |
Moderator
|
Цитата:
После импорта наших дороботок этой формы кнопка 'Счет фактура" считается удаленной в слое CUS.
Итак, допустим у нас был SP2. Возьмем для определенности какую нибудь форму, например SalesTable. Допустим что-то я в ней поменял, на usr слое. Теперь мы решили перейти на SP5, в котором, допустим, на SalesTable добавили новую кнопку в каком-то слое например dis. Я ставлю Аксапту, SP5 - эта кнопка еще видна и работает, но нет моих модификаций. Затем я загружаю проект с моими модификациями, как всегда на usr слой. Как я понял, кнопка добавленная на dis слое в SP5 перестанет быть видна ? Почему ? Ведь я не менял эту кнопку и в моем *.xpo файле не содержится никакой информации о необходимости модификации этой кнопки. По логике, она должна остаться. Или я не прав ? Почему ? |
|
19.02.2003, 12:33 | #7 |
Участник
|
В нашем файле *.xpo нет этой кнопки. Поэтому при импорте рабочая область будет содержать в себе только информацию из этого файла. Точно не уверен, но мне кажется такая беда как раз у дизайна форм. Так ли это???
|
|
19.02.2003, 12:42 | #8 |
Участник
|
На самом деле все обстоит так. Когда вы модифицируете форму или отчет, то (будем для определенности говорить о слое usr) Аксапта создает КОПИЮ этой формы в слое usr. Соответственно все изменения, которые вы делаете, вы делаете в этой копии.
Когда вы модифицируете таблицу или класс, они не копируеются. Просто в слое usr появляются создаваемые или модифицируемые объекты. Именно по этой причине из классов и таблиц нельзя удалять методы или поля, созданные на более низком слое. В формах/отчетах это запросто. Соответственно, когда приходит новая версия, в которой были изменены те же формы что и в слое usr, то копия этих форм в слое usr перекрывает эти модификации. Поэтому новых контролок и не видно. А с классами и таблицами таких проблем не возникает (разве что только с измененными методами). |
|
19.02.2003, 13:05 | #9 |
Moderator
|
Цитата:
Когда вы модифицируете форму или отчет, то (будем для определенности говорить о слое usr) Аксапта создает КОПИЮ этой формы в слое usr.
Спасибо. Не знал. Я считал, что Аксапта не создает копию формы, а всего лишь хранит информацию о пользовательких модификациях. |
|
19.02.2003, 13:27 | #10 |
Участник
|
Цитата:
Я считал, что Аксапта не создает копию формы, а всего лишь хранит информацию о пользовательких модификациях.
|
|
19.02.2003, 13:59 | #11 |
Участник
|
А кто мне ответит на такой вопрос: почему при сравнении слоев некоторых объектов можно нажать на форме сравнения (при этом изменения "поднимутся" в рабочую область), а у других объектов такая возможность отсутсвует???? В случае с формой SalesTable - добавить измения таким образом как раз нельзя. Почему???
|
|
19.02.2003, 13:59 | #12 |
Участник
|
Спасибо. Как я понял проблему импорта форм и отчетов можно решить только ручками сравнивая слои?
__________________
Сергей |
|
19.02.2003, 14:04 | #13 |
Участник
|
Цитата:
Соответственно, когда приходит новая версия, в которой были изменены те же формы что и в слое usr, то копия этих форм в слое usr перекрывает эти модификации. Поэтому новых контролок и не видно. А с классами и таблицами таких проблем не возникает (разве что только с измененными методами).
|
|
19.02.2003, 14:15 | #14 |
Участник
|
Цитата:
Насколько мне известно с методами форм ситуация такая же как с методами классов. С новыми проблем не возникает, а только с измененными.
|
|
19.02.2003, 14:21 | #15 |
Участник
|
Цитата:
В общем-то да, за исключением того, что в классе нельзя удалить метод более низкого слоя, а в форме можно, т.к. форма копируется в слой целиком.
|
|
19.02.2003, 17:59 | #16 |
Banned
|
Цитата:
Целиком ли?
Поднимается ручками. |
|
19.02.2003, 18:14 | #17 |
SAP
|
Цитата:
Изначально опубликовано Peter Savintsev
за исключением того, что в классе нельзя удалить метод более низкого слоя, а в форме можно, т.к. форма копируется в слой целиком. Цитата:
Изначально опубликовано EVGL
Целиком, целиком. Поднимается ручками. |
|
Теги |
обновление, ax2.5 |
|
|