|   |   | 
| 
 | Конвертация УПП с 8.1 в 8.2 как обойти такие грабли | ☑ | ||
|---|---|---|---|---|
| 0
    
        Trance_1C 02.11.11✎ 10:28 | 
        Первый трабл это выражение "ОбработкаЗаполнения" пристуствующее во всех модулях документов.
  Второй трабл это "Различные и Упорядочить" в запросах. В идеале хочу найти автоматизированное решение для обоих проблем. если есть такая обработка на ИТС или еще где подскажите как называется? :) Попытался глобально во всей конфигурации переименовать метод "ОбработкаЗаполнения" в "нОбработкаЗаполнения" и соответственно перестали заполняться вводимые на основании документы, например Реализация на основании заказа. Хотя все обращения во всех модулях соответственно переименованы. Почему перестала непонятно. кто как конвертировал может инструкция есть? | |||
| 1
    
        Maxus43 02.11.11✎ 10:30 | 
        обработка по поиску есть на ИТС, автоисправления нет, ибо это не реально     | |||
| 2
    
        Maxus43 02.11.11✎ 10:30 | 
        в самой статье про эти грабли есть ссылка на обработку     | |||
| 3
    
        Maxus43 02.11.11✎ 10:31 | 
        >>переименовать метод "ОбработкаЗаполнения" в "нОбработкаЗаполнения"
  а это что за ересь то? там смысл косяка не в этом... статью то читал хоть? | |||
| 4
    
        Maxus43 02.11.11✎ 10:32 | 
        >>Почему перестала непонятно.
  потому что это предопределённая прцедура, вызывается при методе Заполнить | |||
| 5
    
        John83 02.11.11✎ 10:34 | 
        (4) по-моему по той причине, что нужно это ручками делать.
  Например, если в форме удалить процедуру ПриОткрытии(), а потом в модуле вручную ее прописать, то она перестанет работать. | |||
| 6
    
        John83 02.11.11✎ 10:34 | 
        (0) так оставь режим совместимости с 8.1
  PS я правильно понимаю, что на 1.3 пока что обновляться не будете? | |||
| 7
    
        Maxus43 02.11.11✎ 10:35 | 
        (5) у формы можно, у объекта так нельзя. а суть в том что это переименование вобще не надо делать     | |||
| 8
    
        Maxus43 02.11.11✎ 10:35 | 
        автор статью про переход не читал с ИТС короче     | |||
| 9
    
        Trance_1C 02.11.11✎ 10:36 | 
        (7)Ок, а что надо делать, статью не читал, диск не устанавливается :(     | |||
| 10
    
        Trance_1C 02.11.11✎ 10:37 | 
        на 1.3 это УПП перевести не реально, подскажите плиз что там делать, 
  а ИТС предатель при установке просит ключ диска, я хз где его искать у меня только коды коробок... | |||
| 11
    
        Trance_1C 02.11.11✎ 10:40 | 
        (4) Ерунда откачусь к конфиге из хранилища, главное понять что с этим делать у меня там 795 ошибок...     | |||
| 12
    
        Maxus43 02.11.11✎ 10:40 | 
        не копипастится с ИТС статья, печатать я ж не буду. Пока не прочитаеш статью - не пытайся делать перевод вобще, там не так всё плохо, переименований массовых не требуется     | |||
| 13
    
        Maxus43 02.11.11✎ 10:42 | 
        (11) суть в том что в ОбработкаЗаполнения обязательно должен быть код по определению типа источника, что в типовых в основном уже есть     | |||
| 14
    
        Trance_1C 02.11.11✎ 10:44 | 
        (12) а в каком разделе ее искать? ИТС ПРОФ?     | |||
| 15
    
        Trance_1C 02.11.11✎ 10:44 | 
        Здесь бы эта статья не помешала...     | |||
| 16
    
        Maxus43 02.11.11✎ 10:45 | 
        тоже долго искал первый раз... в конфигурировании помоему. нет в дисководе ИТС) лезть далеко     | |||
| 17
    
        Maxus43 02.11.11✎ 10:47 | 
        а вобще поэтапно делается, сначала (6), потом уж как всё устаканиться потихоньку делать доработки кода чтобы убрать режим совместимости     | |||
| 18
    
        Trance_1C 02.11.11✎ 11:20 | 
        (16) В конфигурировании это на профе или партнерском?
  на профе такого раздела не вижу | |||
| 19
    
        Maxus43 02.11.11✎ 11:30 | 
        на профе, непомню я точно, поиском вобще по "8.2" искал, в куче там нашёл     | |||
| 20
    
        shuhard 02.11.11✎ 11:36 | 
        (18) http://its.1c.ru/db/metod81#content:3272:1
  Адаптация конфигураций "1С:Предприятия 8.1" к работе на платформе "1С:Предприятие 8.2" без режима совместимости с версией 8. | |||
| 21
    
        saski 02.11.11✎ 17:46 | 
        Подскажите как конвертнуть упп базу для 8.2, если в процессе конвертации
  1с вылетает без всяких сообщений. В чем могут быть проблемы. Базу проверял всякими всевозможными способами все хорошо, но ничего не получается | |||
| 22
    
        эцп 02.11.11✎ 20:55 | 
        (21) Проблема может быть в релизе платформы. Какой у вас?     | |||
| 23
    
        эцп 02.11.11✎ 20:58 | 
        (0) Уважаемый All, объясните, в чем у автора топика проблемы? Сам недавно переводил УПП 8.1 на 8.2 с переходом на 1.3 - никаких (непреодолимых) проблем не встрелилю     | |||
| 24
    
        Trance_1C 03.11.11✎ 05:35 | 
        Статья с ИТС.
  Адаптация конфигураций 1С:Предприятия 8.1 к работе на платформе 1С:Предприятие 8.2 без режима совместимости с версией 8.1 В документе приведена методика по обеспечению совместимости прикладных решений, разработанных на платформе 1С:Предприятие 8.1, с платформой 1С:Предприятие 8.2. Данную процедуру рекомендуется выполнять перед конвертацией конфигурации в 1С:Предприятие 8.2 и отключением режима совместимости с 1С:Предприятием 8.1. По каждой проблеме несовместимости дается краткая инструкция по выявлению "проблемных" мест в конфигурации и выполнению адаптации. Выявить "проблемные" места поможет обработка, приведенная в конце данной статьи. Запрос с ключевым словом РАЗЛИЧНЫЕ Запрос, в котором указано ключевое слово РАЗЛИЧНЫЕ, а в предложении УПОРЯДОЧИТЬ ПО указано выражение, отсутствующее в списке выборки, считается некорректным; и при исполнении такого запроса в 1С:Предприятии 8.2 будет выдана ошибка. Для устранения несовместимости необходимо: ? выявить все запросы с РАЗЛИЧНЫЕ и УПОРЯДОЧИТЬ ПО с помощью приложенной обработки; ? дополнить список выражений в ВЫБРАТЬ выражениями из раздела УПОРЯДОЧИТЬ ПО, если требуется; ? тем самым получим тот же результат, который был в 1С:Предприятии 8.1, но при этом запрос станет синтаксически правильным. Например, запрос Копировать в буфер обмена ВЫБРАТЬ РАЗЛИЧНЫЕ Сотрудник, ВидРасчета ... УПОРЯДОЧИТЬ ПО Сотрудник.Наименование, Сотрудник.ДатаРождения, ВидРасчета.Код синтаксически верен, так как УПОРЯДОЧИТЬ ПО выполняется по полям ссылок Сотрудник и ВидРасчета, а такие ссылки в ВЫБРАТЬ уже есть. Анализа типа параметра обработчика ОбработкаЗаполнения В 1С:Предприятии 8.2 обработчик ОбработкаЗаполнения требует анализа типа приходящего в качестве параметра значения. Для устранения несовместимости необходимо: ? выявить все обработчики ОбработкаЗаполнения (поможет приложенная обработка); ? убедиться в том, что в коде обработчика есть анализ типа параметра; ? если нет – вставить в код условие вида Если ТипЗнч( Основание) = Тип("…"), где Основание – параметр обработчика ОбработкаЗаполнения. Дополнительный вызов обработчика ОбработкаЗаполнения В 1С:Предприятии 8.2 обработчик ОбработкаЗаполнения вызывается при программном вводе нового элемента с помощью вызова методов ПолучитьФормуНовогоДокумента, ПолучитьФормуНовогоЭлемента и аналогичных. В результате чего, следующий код дважды вызовет обработчик объекта ОбработкаЗаполнения: Копировать в буфер обмена ФормаСчетаФактуры = Документы.СчетФактуры.ПолучитьФормуНовогоДокумента(); // обработчик ОбработкаЗаполнения вызывается автоматически ФормаСчетаФактуры.Заполнить(ДокументОснованиеСсылка); // приводит к повторному вызову обработчика ОбработкаЗаполнения ФормаСчетаФактуры.Открыть(); Для устранения несовместимости необходимо: ? выявить все вызовы метода Заполнить(), которые применяются совместно с методами вида ПолучитьФормуНового; ? заменить вызов ПолучитьФормуНового на пару вызовов ПолучитьФорму и Открыть. Например: Копировать в буфер обмена ОбъектСчетаФактуры = Документы.СчетФактуры.СоздатьДокумент(); ОбъектСчетаФактуры.Заполнить(ДокументОбъект.Ссылка); ФормаСчетаФактуры = ОбъектСчетаФактуры.ПолучитьФорму(); ФормаСчетаФактуры.Открыть(); Конфликт имен методов и свойств Нельзя использовать имена переменных, совпадающие с новыми методами и свойствами, которые появились в 1С:Предприятии 8.2: ? перечисления ГруппировкаКолонок и ОтображениеКнопки; ? метод ПроверитьЗаполнение у объектов, манипулирующих данными (СправочникОбъект, НаборЗаписей и т.п.) ? новые методы глобального контекста: ? ПредопределенноеЗначение(), ? СмещениеЛетнегоВремени(), ? ЗаблокироватьДанныеДляРедактирования(), ? РазблокироватьДанныеДляРедактирования(), ? ПолучитьЗначенияОтбораЖурналаРегистрации(), ? УстановитьПривилегированныйРежим(), ? ПривилегированныйРежим(). Для устранения несовместимости необходимо найти переменные, процедуры или функции с такими названиями (с помощью приложенной обработки), переименовать их и исправить все их использования в конфигурации. Также нельзя использовать имена картинок, совпадающие с новыми картинками из библиотеки картинок: ВАЖНО! Не требуется переносить поля из УПОРЯДОЧИТЬ ПО в ВЫБРАТЬ, если в УПОРЯДОЧИТЬ ПО написано выражение "от ссылки", например, Товар.Наименование и при этом в предложении ВЫБРАТЬ поле Товар уже есть. ? НастройкиОтчета, ? Форма, ? ХранилищеНастроек, ? АктивныеПользователи, ? ЖурналРегистрации, ? ЖурналРегистрацииПоПользователю, ? ПоказатьДанные, ? Свойства. Для устранения несовместимости необходимо выявить такие картинки (поможет приложенная обработка), переименовать и исправить все их использования в конфигурации. Поле Тип у таблиц журналов документов В 1С:Предприятии 8.2 для таблиц журналов документов реализовано виртуальное поле Тип, содержащее тип документа. Для устранения несовместимости необходимо: ? выявить журналы с такой графой (с помощью приложенной обработки); ? переименовать и исправить все их использования в коде конфигурации. Изменение поведения операции языка запросов ВЫРАЗИТЬ В 1С:Предприятии 8.2 операция языка запросов ВЫРАЗИТЬ возвращает строку переменной длины (без концевых пробелов) при приведении к типу СТРОКА. Для устранения несовместимости необходимо: ? найти запросы с ВЫРАЗИТЬ; ? проанализировать, является ли получаемое выражение результатов выборки (находится в ВЫБРАТЬ); ? проверить, как обрабатывается соответствующее поле результата запроса – нет ли там кода, опирающегося на то, что длина получаемой строки равна заданной в запросе. Схемы компоновки данных, содержащие объединяемые наборы данных В 1С:Предприятии 8.2 для схем компоновки данных, которые содержат объединяемые наборы данных, изменено поведение при отборе по полю, которое присутствует только в одном объединяемом наборе данных. Например, имеется набор данных – объединение, в котором имеется два дочерних набора данных: ? набор данных Продажи, с полями Контрагент, Номенклатура, Сумма ? и набор данных Оплата, с полями Контрагент, Сумма задан отбор Номенклатура Равно "Стол". Тогда результат компоновки будет содержать только записи из набора данных Продажи, удовлетворяющие условию отбора. В конфигурациях прежнее поведение системы компоновки данных "обходилось" путем ввода "фиктивных" полей в объединяемые наборы данных. Для устранения несовместимости необходимо: ? выявить все схемы компоновки данных с наборами данных – объединениями; ? если требуется сохранить текущее поведение 1С:Предприятие 8.1, завести одинаковый набор полей в объединяемых наборах данных; ? если текущее поведение 1С:Предприятие 8.1 считается ошибкой – ничего не предпринимать (записать ошибку). Изменение имен идентификаторов групп полей настройки СКД В 1С:Предприятии 8.2 идентификаторы групп полей настройки СКД были изменены на русскоязычные: ? "SystemFields" -> "СистемныеПоля" ? "SerialNumber" -> "НомерПоПорядку" ? "GroupSerialNumber" -> "НомерПоПорядкуВГруппировке" ? "Level" -> "Уровень" ? "LevelInGroup" -> "УровеньВГруппировке" ? "GroupPercent" -> "ПроцентВГруппе" ? "OverallPercent" -> "ПроцентОбщий" ? "DataParameters" -> "ПараметрыДанных" ? "UserFields" -> "ПользовательскиеПоля" Для устранения несовместимости необходимо: ? заменить в коде старые идентификаторы на новые. Например, Копировать в буфер обмена Если ДоступноеПоле.Поле <> Новый ПолеКомпоновкиДанных("SystemFields") Тогда заменить на Копировать в буфер обмена Если ДоступноеПоле.Поле <> Новый ПолеКомпоновкиДанных("СистемныеПоля") Тогда Ограничение длины реквизита метаданных типа "Строка фиксированной длины" В 1С:Предприятии 8.2 реквизит метаданных типа "Строка фиксированной длины" не может быть длиной более 100 символов. Для устранения несовместимости необходимо: ? выявить все такие реквизиты с помощью приложенной обработки, ? если такие реквизиты есть, необходимо перепроектировать функционал: ? заменить на строки переменной длины ? и провести анализ использования данных этих реквизитов – нет ли кода, рассчитывающего, на фиксированную длину (наличие хвостовых пробелов). Проверка заполнения стандартного реквизита Наименование В 1С:Предприятии 8.2 изменено поведение стандартного реквизита Наименование справочников, планов видов характеристик, планов счетов, планов видов расчета и задач. По умолчанию свойство "Проверка заполнения" установлено в значение "Выдавать ошибку". Для устранения несовместимости необходимо: ? выявить все формы элементов объектов, в которых реквизит Наименование не редактируется (отсуствует на форме), ? убедиться, что реквизиту Наименование устанавливается значение перед записью в форме. Если реквизит Наименование не редактируется пользователем, то его следует заполнить из кода на встроенном языке. Удаление некоторых свойств табличного документа В 1С:Предприятии 8.2 удалены свойства ЦветФонаГруппировки, ЦветТекстаГруппировки, ЦветФонаЗаголовков и ЦветТекстаЗаголовков табличного документа. Для устранения несовместимости необходимо: ? выявить использование таких идентификаторов в текстах модулей (с помощью приложенной обработки), ? если они есть, необходимо перепроектировать функционал, избавившись от их использования. Изменение представления приложения 1CV8 В 1С:Предприятии 8.2 изменено представление приложения 1CV8 – вместо "1С:Предприятие" используется "Толстый клиент": ? в методе ПредставлениеПриложения ? в системных формах. Для устранения несовместимости необходимо: ? проверить наличие строкового литерала "1С:Предприятие" в модулях (с помощью приложенной обработки); ? проанализировать не сравнивается ли он с именем приложения; ? см. метод ПолучитьСоединенияИнформационнойБазы и свойство ИмяПриложения. Изменения имени класса COM-соединителя В 1С:Предприятии 8.2 изменено имя класса COM-соединителя – вместо "V81.COMConnector" используется "V82.COMConnector". Для устранения несовместимости необходимо выявить все вхождения "V81.COMConnector" и заменить их на вызов функции, получающей имя COM- соединителя универсально: Копировать в буфер обмена // Вернуть имя COM-класса для работы с 1С:Предприятием 8 через COM-соединение. Функция ИмяCOMСоединителя() Экспорт СисИнфо = Новый СистемнаяИнформация; ПодстрокиВерсии = ОбщегоНазначения.РазложитьСтрокуВМассивПодстрок(СисИнфо.ВерсияПриложения, "."); Возврат "v" + ПодстрокиВерсии[0] + ПодстрокиВерсии[1] + ".COMConnector"; КонецФункции Изменение поведения метода Заблокировать объекта БлокировкаДанных В 1С:Предприятии 8.2 изменено поведения метода Заблокировать() объекта БлокировкаДанных. Если объект БлокировкаДанных был неправильно проинициализирован, то возникает ошибка о неверном типе устанавливаемого значения. Ранее в 1С:Предприятии 8.1 в этом случае ошибка не возникала, и установка управляемой блокировки не производилась. Например, если блокировка по типу МоментВремени для реквизитов типа Дата ранее игнорировалась, то теперь следующий код приводит к ошибке: Копировать в буфер обмена Блокировка = Новый БлокировкаДанных; ЭлементБлокировки = Блокировка.Добавить("РегистрНакопления.ТоварыВНаличии"); ЭлементБлокировки.УстановитьЗначение("Склад", Склад); ЭлементБлокировки.УстановитьЗначение("Период", Новый МоментВремени(Дата, Ссылка)); Блокировка.Заблокировать(); выдает ошибку: {Документ.ПриходныйОрдер.МодульОбъекта(<номер строки>)}: Ошибка при вызове метода контекста (Заблокировать): Неверный тип устанавливаемого значения для поля блокировки РегистрНакопления.ТоварыВНаличии.Период - Момент времени по причине: Неверный тип устанавливаемого значения для поля блокировки РегистрНакопления.ТоварыВНаличии.Период - Момент времени Для устранения несовместимости необходимо: ? выявить все вызовы метода контекста Заблокировать(), ? убедиться, что объект БлокировкаДанных инициализируется допустимым образом. В частности, вместо типа МоментВремени в качестве значения блокировки используется тип Дата. Изменение поведения свойств Вывод и ОриентацияСтраницы табличного документа В 1С:Предприятии 8.2 попытка присвоить некорректные значения свойствам Вывод и ОриентацияСтраницы табличного документа приводит к ошибке. Ранее в 1С:Предприятии 8.1 в этом случае ошибка не возникала, а некорректное присваивание игнорировалось. Для устранения несовместимости необходимо: ? выявить все места присваивания свойств Вывод и ОриентацияСтраницы табличного документа, ? убедиться, что присваиваются допустимые значения. Увеличены отступы слева и справа от текста в ячейках табличного документа При том же шрифте и тех же размерах колонки текст ячейки табличного документа может не помещаться по ширине. Для устранения несовместимости необходимо: ? выявить колонки табличного элемента, которым устанавливается фиксированная ширина без возможности изменения пользователем, ? увеличить ширину таких колонок, либо разрешить изменение их ширины в режиме 1С:Предприятия. Удаление свойства подсистемы некоторых объектов метаданных Свойство Подсистемы некоторых объектов метаданных (таких как Справочник, Документ и т.п.) не поддерживается в режиме совместимости "Не использовать". Для устранения несовместимости необходимо: ? Выявить все обращения к этому свойству, для этого использовать поиск подстроки ".Подсистемы" ; ? Отказаться от использования свойства Подсистемы, пересмотрев логику соответствующего модуля. Вместо этого свойства следут использовать свойство Состав у объекта метаданных Подсистема. Обработка для проверки совместимости конфигураций с 8.2 Обработка ПроверкаКонфигурацииДляПереводаНа82.epf для конфигураций на платформе 1С:Предприятии 8.1 находится в каталоге: 1CIts/EXE/EXTREPS/Uniprocs82/ | |||
| 25
    
        saski 03.11.11✎ 10:50 | 
        (22) Версия платформы точно не причем. Брал пустую УПП 1.2.32 
  демо версию на 8,1 затем открывал ее в 8.2 все работает конвертация базы проходит. затем тоже самое делаю с рабочей упп 1.2.32 немного доработанную не проходит вылетает. Уже все ошибки по базе исправил. ничего не получается. | |||
| 26
    
        John83 03.11.11✎ 11:10 | 
        (25) попробуй убрать все изменения в модулях, в крайнем случае объедини с типовой и конвертируй     | |||
| 27
    
        disk-2008 03.11.11✎ 11:22 | 
        Подскажите, пожалуйста, можно ли использовать эту обработку с ИТС для поиска несовместимости во внешних печатных формах.
  Форм очень много и вручную слишком долго получится. | |||
| 28
    
        disk-2008 03.11.11✎ 11:28 | 
        (27)+
  Или, если эту обработку использовать невозможно, как проверить на совместимость внешние печатные формы? Сейчас у меня все работает в режиме совместимости с 8.1. Хочу отключить. | |||
| 29
    
        эцп 03.11.11✎ 17:46 | 
        (25) Я бы все равно попробовал на разных версиях (сам конвертировал на 8.2.14.533, предлагаю еще проверить на 8.2.13.219).
  Еще варианты: 1. Прогнать базу на ошибки со следующими настройками: http://i31.fastpic.ru/big/2011/1103/67/64abc1bd20309b92758ccbf8eaf50f67.png 2. Выяснить, проблема в cf или в базе: создаем новую базу, загружаем в неё cf из рабочей, конвертируем из 8.1 в 8.2. 3. Попробовать загрузить базу в SQL (или она уже там? если там, конвертнуть файловый (первый пункт выполнять в файловом варианте обязательно)) и конвертнуть в этом режиме (в этом режиме больший контроль над целостностью данных). Варианты с потерей данных: 1. Попробовать залить от 1С конфигурацию, без изменений. Конвернтуть. | |||
| 30
    
        disk-2008 03.11.11✎ 22:16 | 
        Так никто не проверял внешние печатные формы?     | |||
| 31
    
        disk-2008 03.11.11✎ 22:57 | 
        Все без проверки режим совместимости отключали?     | |||
| 32
    
        disk-2008 07.11.11✎ 10:34 | 
        Вопрос остался.
  Скажите, пожалуйста, кто как проверяет совместимость именно для внешних печатных форм. | |||
| 33
    
        disk-2008 07.11.11✎ 13:33 | 
        Работает, но, хотелось бы проверить какой-нибудь обработкой.     | 
| Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |