Конвертация реквизита (ТиС 7.7) в доп.реквизит (УТ 8.3) #807578


#0 by DenYuliya
Добрый день. Переношу реквизиты (их штук 20, тип в основном либо булево, либо строк. Самопись, добавленная в спр. Контрагенты, ТиС (7.7)) в доп.реквизиты спр. Партнеры (УТ 11). Доп.реквизиты спр.партнеры - это ТЧ справочника. Создала ПКГС  с пустым Источником и "ДополнительныеРеквизиты" в Приемнике. В обработчике "ПередОбработкой" создала ТЗ  с колонками "Свойство", "Значение" и "ТекстоваяСтрока", и попыталась создать и заполнить строки. КоллекцияОбъектов = СоздатьОбъект("ТаблицаЗначений";); КоллекцияОбъектов.НоваяКолонка("Свойство";); Понимаю, что в ПКС надо теперь тоже что-то прописать. А вот что и в каком обработчике - не знаю. Мне кажется, что в "ПриВыгрузке", но не уверена. Пыталась заполнить ПКС "Свойство", в "ПриВыгрузке" вставила Но что-то ничего не происходит, ошибок тоже не выдается ни при выгрузке, ни при загрузке. Явно я что-то делаю не так... Наставьте "На путь истинный", пожалуйста? Третий день не могу перенос реквизита в доп реквизита побороть. Просто не знаю - в ту ли сторону я вообще движусь, и в чем моя ошибка?
#0 by DenYuliya
Добрый день. Переношу реквизиты (их штук 20, тип в основном либо булево, либо строк. Самопись, добавленная в спр. Контрагенты, ТиС (7.7)) в доп.реквизиты спр. Партнеры (УТ 11). Доп.реквизиты спр.партнеры - это ТЧ справочника. Создала ПКГС  с пустым Источником и "ДополнительныеРеквизиты" в Приемнике. В обработчике "ПередОбработкой" создала ТЗ  с колонками "Свойство", "Значение" и "ТекстоваяСтрока", и попыталась создать и заполнить строки. КоллекцияОбъектов = СоздатьОбъект("ТаблицаЗначений";); КоллекцияОбъектов.НоваяКолонка("Свойство";); Понимаю, что в ПКС надо теперь тоже что-то прописать. А вот что и в каком обработчике - не знаю. Мне кажется, что в "ПриВыгрузке", но не уверена. Пыталась заполнить ПКС "Свойство", в "ПриВыгрузке" вставила Но что-то ничего не происходит, ошибок тоже не выдается ни при выгрузке, ни при загрузке. Явно я что-то делаю не так... Наставьте "На путь истинный", пожалуйста? Третий день не могу перенос реквизита в доп реквизита побороть. Просто не знаю - в ту ли сторону я вообще движусь, и в чем моя ошибка?
#1 by Ёпрст
просто в пко справочника определи таб часть , ей в пкгс в КоллекцияОбъектов назначть свойства, + в пкс добавь свойства с пустым источником. всё
#2 by Йохохо
#3 by DenYuliya
спасибо, сейчас изучу
#4 by бомболюк
есть вариант условно попроще - через значения параметров. Выгрузка из 7ки штатно не поддерживает параметры, но это легко исправить. В ПослеВыгрузки ПКО добавляем по числу параметров в ПКО ПослеЗагрузки данные значения будут доступны через ПараметрыОбъекта.Получить("ИмяПараметра") мне кажется для понимания этот вариант попроще будет
#5 by DenYuliya
:( не понимаю, как. И почему в ПКО, а не в ПКГС? Если смотреть форумы, везде говорят о ПКГС. "В ПКО справочника" - имеется в виду в ПКГС создать ПКО для реквизитов "Свойство", "Значение" и "ТекстоваяСтрока"?
#6 by DenYuliya
ПКГС при этом вообще не создаем и не трогаем? Честно говоря,метод с параметрами я вообще не поняла, но возможно потому, что я уже "настроилась" на ТЗ в ПКГС.
#7 by бомболюк
ПКГС тут не нужно
#8 by Ёпрст
читаем внимательно: в пко справочника определи таб часть , ей в пкгс в КоллекцияОбъектов назначть свойства, + в пкс добавь свойства с пустым источником. всё
#9 by DenYuliya
Я вроде бы все это сделала. Ну или я не понимаю, что я не так сделала. в пко справочника определи таб часть = Создала ПКГС  с пустым Источником и "ДополнительныеРеквизиты" в Приемнике. ей в пкгс в КоллекцияОбъектов назначть свойства = создание ТЗ в ПКГС (код приведен выше) в пкс добавь свойства с пустым источником = Пыталась заполнить ПКС "Свойство", в "ПриВыгрузке" вставила
#10 by DenYuliya
скрин
#11 by Ёпрст
Покажи картинку с раскрытой таб частью Доп Сведения
#12 by Ёпрст
ну и вот это выкинь >>>в пкс добавь свойства с пустым источником = Пыталась заполнить ПКС "Свойство", в "ПриВыгрузке" вставила ты и так уже определила всю таб часть целиком в пкгс
#13 by Ёпрст
и галка "получить из входящих данных" на пкгс не нужна
#14 by DenYuliya
#15 by DenYuliya
оке, спасибо. Это я так, экспериментировала методом тыка по принципу "Вдруг взлетит".
#16 by Ёпрст
1.убери галку "получить из входящих" данных 2.убери код >>>ыталась заполнить ПКС "Свойство", в "ПриВыгрузке" вставила
#17 by Ёпрст
Посмотри, заполняется ли при выгрузке твоя таблица значений, если да, то твоя таб часть должна заполнятся
#18 by DenYuliya
сделала. Свойство, по-идее, тоже в ПКГС должно определяться?
#19 by Ёпрст
да. КоллекцияОбъектов - это и есть вся таб часть целиком.
#20 by DenYuliya
меня смутило "Нельзя заполнять Свойство в ПКГС, потому что не известен параметр, поэтому заполняем Свойство в ПКО",с обсуждений на одном из форумов...
#21 by Ёпрст
нужно смотреть контекст конкретной задачи. Если у тебя все данные есть при выгрузке объекта, то всё можно
#22 by DenYuliya
как это посмотреть? В выгружаемом файле проверить на наличие данных?
#23 by DenYuliya
да, у меня все данные есть. Т.е. в Источнике точно есть реквизиты, в приемнике точно созданы соответствующие Доп.реквизиты. Не факт, что в Источнике каждый реквизит заполнен даннными, т.к. они не обязательные, но в принципе реквизиты есть.
#24 by Ёпрст
Если лень мучаться с отладкой и отладчиком, то тупо в коде напиши Сообщить("Выгружаем: "+КоллекцияОбъектов.КоличествоСтрок+" значений");
#25 by DenYuliya
* это ответ на
#26 by DenYuliya
оке, попробую. А сейчас будет мега-тупой вопрос. "Свойство" ведь в ПКГС тоже надо определить? Как его определять? Если я правильно понимаю, то "Свойство" - это ПВХ, т.е. что-то примерно Значение - это непосредственно то, чем заполнен реквизит, может быть любого из доступных типов. ТекстовоеПредставление  - это просто строка, как бы "шапка" реквизита, и оно задается жестко: верно?
#27 by Ёпрст
у тебя для ПВХ должно быть ПКО определено.
#28 by Ёпрст
вот по тим правилам и выгружай свойство
#29 by DenYuliya
в типовых правилах ПКО для ПВХ " доп.реквизиты" не определено, как ни странно. Что-то я и не подумала о том, что для ПВХ должны быть ПКО...Косяк-с...
#30 by MaxS
Есть вариант использовать загрузку из Excel. Первое что в голову пришло: "Загрузка номенклатуры из Excel в УТ11, КА 2, ERP 2, Розница 2. Дополнительные реквизиты и сведения, характеристики, картинки, цены, остатки" ;) Из 7-ки выгружаете в файл, наводите там порядок, что-то переделываете в характеристики... На всякий случай завести колонку для характеристики, например, доп _сведение_  с кодом номенклатуры из 7-ки. С остатками придётся повозиться, чтобы правильно свернуть по характеристикам.
#31 by DenYuliya
это типовая обработка? Хм. Сомнительная идея, очень много данных. Остатки пока не нужны, подходят типовые планы обмена для ТиС - УТ 11, но вот с этими самыми доп.реквизитами затык. А вручную в экселе я год переделывать буду, и так из рабочей базы выгрузка не проходит, падая с ошибкой "недостаточно памяти". Но может глянуть в этой обработине, как в доп.реквизиты переделать...
#32 by MaxS
Встречался с таким процессом переезда с 7-ки через excel.  Там же ещё и по видам номенклатуры нужно всё распределить. Поэтому переходили поэтапно по виду номенклатуры, по папкам справочника и т.п. Несколько человек, несколько месяцев, у каждого свой участок номенклатуры. Да я смотрел обработку, автор её бесплатно не отдаёт почему-то. ;)
#33 by DenYuliya
насчет необходимости и правильности программно определять Свойств в ПКЗ для "Свойство"(для ПКГС) вычитала тут
#34 by DenYuliya
у меня Контрагенты, там попроще, наверное. Имхо...я, конечно, не гуру 1С, но мне кажется переносить через  Excel с последующей ручной правкой Excel и его загрузкой в УТ 11 - это какой-то эм...мазохизм :)
#35 by MaxS
То же самое делать потом в самой базе в 8-ке ещё больший мазохизм. ;) Редко бывает идеальный учет в 7-ке и отсутствие необходимости в характеристиках, разных видах номенклатуры и т.п. Не буду спорить, предложил как вариант.
#36 by Йохохо
финтов много. Там решение норм, но можно короче или вообще захардкодить отдельное ПКО под пвх для доп свойств номенклатуры Конвертация лучше тем, что если правила аккуратные, то можно дописывая ПВД догружать и частично параллельно работать
#37 by DenYuliya
еще вопрос такой....Если у меня 20 реквизитов, которые мне надо перенести в Доп.реквизиты, мне ведь для каждого из них в ПКГС надо прописывать код, аналогичный этому?
#38 by Йохохо
а варианты?) обходить метаданные, искать по имени в списке типовых реквизитов ТИС и если нет выгружать? изящно)
#39 by DenYuliya
ну да...в цикле обходить. Тогда будет попадать куча "лишних" типовых реквизитов. Да, плохая идея. " А что со "Свойствами" в итоге? Свойства должны присваиваться в ПКО для ПВХ, а не в ПКГС? Я создала ПКО для ПВХ (источник - пустой, приемник - ПВХ), но в обработчиках ПКО пока пусто((
#40 by Йохохо
всё должно быть в ПКС ПКГС. Можно передать пустую строку в это пкс из КоллекцииОбъектов, сделать свой ПКО для именно свойств номенклатуры и указать его явно, в передобработкой заполнить ВходящиеДанные корректно для поиска пвх, поставить везде получить из входящих, так красивей кмк. Или просто прописать везде Значение= в этом пко для свойств номенклатуры
#41 by DenYuliya
Вот я с вариантом "Значение = " и пыталась сделать изначально, в описано. В ПКС ПКГС, для "Свойство", в обработчике "ПриВыгрузке" вставила: Я глубочайше извиняюсь за такие вопросы, но "направление мысли" у меня верное? Так определять "Свойство"? Соответственно, для каждого из 20 реквизитов ПСК Свойство будет:
#42 by Йохохо
какой тип "свойство"?
#43 by DenYuliya
ПВХ
#44 by Йохохо
то есть там "константное" значение?
#45 by DenYuliya
да, условно "константное"   Если не считать то, что ПВХ "ДопРеквизиты" есть с разными наименованиями.
#46 by DenYuliya
я имела в виду, что элементы данного ПВХ имеют разное наименование и тип значения.
#47 by DenYuliya
Сейчас у меня в ПКГС так: В ПКС кода нет, созданы 3 реквизита: Свойство, Значение, Текстовоепредставление, с пустыми Источниками и заполненными соответствующим значением Приемниками. Кода в Обработчиках - нет. Так же создано ПКС для ПВХ "ДополнительныеРеквизитыИСведения", Источник пустой, приемник - ПВХ ДополнительныеРеквизитыИСведения. В обработчиках - пусто...
#48 by Йохохо
#49 by Йохохо
гвинпин?)
#50 by DenYuliya
т.е. под "Калугастройпромрембыттехника" (гыгыгыгы!) у нас то, что в "Наименование" элемента ПВХ? аналог Справочник.МойСправочник.НайтиПоНаименованию("мойРеквизит");? Возможно, моя проблема в недостаточном понимание, что у нас находится в "Свойстве", что в "Значение"...
#51 by Йохохо
в свойстве элемент пвх.дополни.., в значения элемент характеристики.чтототам, закрыл ут уже
#52 by DenYuliya
почему Значение - элемент характеристики? В УТ 11, в ТЧ "доп.свойства" спр. Партнеры (например), тип реквизита "Значение" - это булево, строка, число или ссылка на выбр. справочник. реквизит Свойство - тип ПланВидовХарактеристикСсылка.ДополнительныеРеквизитыИСведения; пы.сы. это какой-то пиндец,конечно...С этими доп.реквизитами
#53 by DenYuliya
Если в ПКГС так, а в обработчиках ПКС для ПКГС - пусто (в плане кода), источник - пустой, приемник - заполнен - тоже толку нет((((. Я уже готова сдаться((.
#54 by бомболюк
Обработчик ПередВыгрузкой ПКС "Свойство": если заработает сделаешь по аналогии для остальных
#55 by Ёпрст
НоваяСтрока = КоллекцияОбъектов.НоваяСтрока; это выкинь из кода, для начала
#56 by Ёпрст
ПРМЗ - реквизит какого тип ?
#57 by Ёпрст
>>. КоллекцияОбъектов.Свойство = ПРМЗ; //это тоже не верно
#58 by Ёпрст
создай пко для нужного плана вида характеристики. поставб галку поиск на наименовании, например. Тогда в свойство в ТЗ будешь передавать строку с наименованием твоего пвх.
#59 by Ёпрст
усё
#60 by Ёпрст
ЗЫ: в ПКС у свойства выстави, что выгружается по правилу твоего ПКО для ПВХ ДополнительныеРеквизитыИСведения
#61 by DenYuliya
строка
#62 by DenYuliya
да я уже поняла. в базе-источнике ПРМЗ - это рекв. спра Контрагенты, тип строка. В базе-приемнике это доп.реквизит спр. Партнеры, тип так же строка.
#63 by DenYuliya
давно поставила....
#64 by DenYuliya
ууупс...да, она же ниже в условие еще раз добавляется
#65 by Ёпрст
а чего у тебя в самом ПКО ? Раз галка зелёненькая там светится
#66 by DenYuliya
там закоментированые честно натыреные обработчики
#67 by Ёпрст
И..Что сейчас то не выходит ?
#68 by DenYuliya
да всё то же самое(((. Пусто, как в склепе. НИ в выгруженных, ни в загруженных.
#69 by Ёпрст
покажи картинки со всеми настройками
#70 by DenYuliya
ну как-то так Блин, там дел-то наверняка на 5 минут(((. может я забыла что-то, упустила какую-то мелочь(((? Справочники "ВидыСвойств", "СвойстваКонтрагентов" и т.д. вроде бы не при чем, т.к. в Источнике все данные - это реквизиты спр.Контрагенты... В приемнике аналогичные доп.реквизиты назначены.
#71 by Ёпрст
выкини код в пкс, где значения присваиваешь свойствам.
#72 by Ёпрст
пробуй.
#73 by Ёпрст
точнее, в пкгс добавь эти строки к своему коду в конец.
#74 by Ёпрст
*Добавить замени на ДобавитьЗначение
#75 by DenYuliya
в таком примере ОбъектКоллекции - это что? Строка той ТЗ, которая создавалась в ПКГС?
#76 by DenYuliya
Сделала все вот так, и в результате почему-то Контрагенты стали выгружаться вообще в Пользователи)))). Хотя выгрузка Пользователей вообще отключена))). Завтра буду разбираться дальше, эх...
#77 by Йохохо
напишите в толстом клиенте создание доп реквизита, а потом в КД
#78 by DenYuliya
)  т.е просто набрать код в толстом клиенте, а потом скопировать?
#79 by Ёпрст
биомать а ? Да выкинь ты уже все ПКС!!!
#80 by Ёпрст
оставь только ПКГС Выкинь код из последних двух картинок
#81 by DenYuliya
один фиг, пусто. Но с другой стороны, хоть что-то: При выгрузке ошибка: Ошибка получения свойства из объекта коллекции. Свойство: ТекстоваяСтрока Выгрузка объекта выборки:  Контр3, ООО  (Справочник) Конвертация объекта или получение ссылки:  Контр3, ООО  (Справочник) Конвертация объекта или получение ссылки:  ТестоваяГруппа  (Справочник) Конвертация объекта или получение ссылки:  СписокЗначений  (СписокЗначений) Конвертация объекта или получение ссылки:  Коммент для ПРМЗ 3  (Строка)
#82 by Ёпрст
дай правила посмотреть
#83 by Ёпрст
выгрузи их, кинь на файлопомойку. ссылку сюда
#84 by DenYuliya
спс...сейчас (*где тут неловко-смущенный смайлик*)...   Это архив с правилами, модулем для 7.7 и выгруженным файлом с данными Это чисто правила:
#85 by Ёпрст
пробуй
#86 by DenYuliya
спасиб...снята галка поиска в ПКО ПКГС, это изменилось, да? Не особо помогло - ошибка при выгрузке из ушла, но все так же пусто, не выгружается ничего и. соответственно, не загружается. Что самое интересное, почему-то в "Приемнике" создается новый Доп.реквизит, с незаполненным значением. Проверяла на типовой УТ 11 и на КА - результат одинаковый.
#87 by Ёпрст
значит, не находит ПВХ по наименованию
#88 by Ёпрст
проверяй, что передаешь в свойство и есть ли пвх с таким наименованием
#89 by DenYuliya
Это проверяется в ПКГС, ПКС все так же оставить в покое и вообще забыть про них?
#90 by Ёпрст
да
#91 by Ёпрст
У тебя есть характеристика с наименованием "ПРМЗ" ?
#92 by Ёпрст
Может, тебе так надо ? СЗ = СоздатьОбъект("СписокЗначений");
#93 by DenYuliya
ПРМЗ - это строковый реквизит спр.Контрагенты в ТиС, там комментарий к скидкам в спр. Контрагенты. сейчас еще так попробую, ага. Я тут консолью нашла, что в приемнике (в УТ 11) доп.реквизит называется не "ПРМЗ", а "ПРМЗ(Общие)". Хотя при создание элемента он называется просто ПРМЗ. Видимо, это связано с тем, что в УТ нельзя просто записать доп.реквизит в корень спр.Партнеры, реквизит попадает либо в "Общие", либо по типу взаимоотношений - "Клиенты" и т.д.
#94 by DenYuliya
Т.е., получается, реквизит спр. Контрагенты в базе-источнике называется "ПРМЗ", а характеристика (доп.свойство) в базе-приёмнике называется "ПРМЗ (Общее)". Ещё только сейчас внимание обратила, что в ПКГС Источник имеет тип спр. "Свойства объектов". А там нет "ПРМЗ". Хотя Спр.Контрагенты.ПРМЗ  - отработает корректно (не именно в КД, в принципе).
#95 by DenYuliya
Не взлетает((. Точнее взлетает, но не так, как надо. В таком случае создаются новые ПВХ в приемнике, с наименованием, = значению реквизита "ПРМЗ" в Источнике. А надо, чтобы Значение доп.реквизита ПРМЗ в Приемнике заполнялось значением реквизита ПРМЗ в в Источнике.
#96 by Ёпрст
а разве тебе не это было нужно ?
#97 by Ёпрст
у тя же значение - это пвх. Вот оне новые и налепились и в тч доп. реквизиты должны подставиться
#98 by DenYuliya
у меня значение же вроде бы - Строка. А Свойство ПВХ
Тэги:
Ответить:
Комментарии доступны только авторизированным пользователям

В этой группе 1С