Конвертация данных 2.0 Как задать значение конкретного элемента базы получателя ?
При выгрузке данных в правиле конвертации свойств (ПКС)
в разделе "при выгрузке" необходимо Значение взять не из реквизита источника,
а жестко задать, причем известно только какой это будет элемент в базе приемнике, в базе источнике такого элемента нет. Как это сделать ?
Мне нужно получить непредопределенный (выбрать по коду) элемент справочника базы получателя, значение перечисления базы получателя и Счет Хозрасчетного плана счетов тоже базы получателя.
Понимаю, как при выгрузке можно найти объект базы источника, а вот как получить и записать в Значение элемент базы получателя - ума не приложу.
Спасибо!
в разделе "при выгрузке" необходимо Значение взять не из реквизита источника,
а жестко задать, причем известно только какой это будет элемент в базе приемнике, в базе источнике такого элемента нет. Как это сделать ?
Мне нужно получить непредопределенный (выбрать по коду) элемент справочника базы получателя, значение перечисления базы получателя и Счет Хозрасчетного плана счетов тоже базы получателя.
Понимаю, как при выгрузке можно найти объект базы источника, а вот как получить и записать в Значение элемент базы получателя - ума не приложу.
Спасибо!
По теме из базы знаний
Ответы
В избранное
Подписаться на ответы
Сортировка:
Древо развёрнутое
Свернуть все
Добрый день!
Возник еще вопрос, пользуюсь типовыми правилами немного подправленными под конфу в основном справочники и пару документов, как сделать что бы выгружались проводки, а у документов стоял признак проведенности?
Правила для переноса из 2.0.55.5.
Обработка - "Универсальный обмен данными XML 2.1.7"
Возник еще вопрос, пользуюсь типовыми правилами немного подправленными под конфу в основном справочники и пару документов, как сделать что бы выгружались проводки, а у документов стоял признак проведенности?
Правила для переноса из 2.0.55.5.
Обработка - "Универсальный обмен данными XML 2.1.7"
(96) тогда выгружаете полностью "мд" конфигураций (чтобы стоял флажок "Выгружать движения документов", но не стоял "только у документов без проведения".
В этом случае Вы сможете выбрать движения регистров в ПКГС, как обычную табличную часть
а признак проведенности это свойство "Проведен", достаточно его добавить (хотя не знаю, может где в коде могут оказаться попытки проведения, Тогда флажок может слететь в случае непроведения).
В этом случае Вы сможете выбрать движения регистров в ПКГС, как обычную табличную часть
а признак проведенности это свойство "Проведен", достаточно его добавить (хотя не знаю, может где в коде могут оказаться попытки проведения, Тогда флажок может слететь в случае непроведения).
(98) samlab, загружайте данные обработкой "Обмен данными XML", а не "Универсальный обмен данными XML". Отличие первой от второй - первая, если установлен у документа признак "Проведен" - она будет пытаться провести документ после загрузки (а не просто поставит признак "Проведен" без самого проведения документа, как это сделает вторая обработка).
(99) Если, я правильно понимаю, то "Обмен данными XML" - после загрузки проводит документы, а не просто ставит им признак. Мне это не подходит, т.к. база переносится с 2007 года и за это время, у многих не типовых документов менялся способ проведения.
(100) Так, как же все таки правильно, учитывая, что правила были написаны Самой 1с)
(100) Так, как же все таки правильно, учитывая, что правила были написаны Самой 1с)
(101)
1) воспользуйтесь обработкой "универсальный обмен данными ..."
2) в настройках расписания сихронизации можно убрать действие "проведение документов" (подробнее уже не помню), вот только не знаю, признак проведения при этом будет стоять или нет в итоге у документа
1) воспользуйтесь обработкой "универсальный обмен данными ..."
2) в настройках расписания сихронизации можно убрать действие "проведение документов" (подробнее уже не помню), вот только не знаю, признак проведения при этом будет стоять или нет в итоге у документа
(106) БП построен так, что приход мог быть в 2007 году, а спишется в 2015. Дописанные документы работают, что называется от "дурака", со строгой последовательностью, поэтому нельзя просто загрузить остатки на 2014 год и продолжать работать. Мб есть другое решение.
109.
пользователь
14.04.14 23:32
(94) samlab, смотря для чего это нужно. Одно дело - разовый перенос данных(например с 1.6 на 2.0), другое дело - перманентный обмен между базами.
Из описанного выше я понял, что первично - проводки в первозданном виде(базе источнике), документы с пометкой проведения - вторичны. Может имеет смысл и выгружать регистр бухгалтерии, а документы подтянутся как реквизит [Регистратор] того же регистра? Только в данном случае будет проблема с сопоставлением содержимого документов, например в 1.6 и 2.0 учет ОС отличен и содержание документов соответственно иное.
Из описанного выше я понял, что первично - проводки в первозданном виде(базе источнике), документы с пометкой проведения - вторичны. Может имеет смысл и выгружать регистр бухгалтерии, а документы подтянутся как реквизит [Регистратор] того же регистра? Только в данном случае будет проблема с сопоставлением содержимого документов, например в 1.6 и 2.0 учет ОС отличен и содержание документов соответственно иное.
(109) bomba, Это разовый перенос с 1.6 на 2.0.
Да, такой вариант, наверное, подошел бы.
(110) На текущий момент, например, перенос за 2008 год не перенес проводки нескольких документов по типовым правилам переноса.
Для самописных добавил ПКГС Хозрасчетный, тестирую.
(111) Свернуть нельзя.
Может имеет смысл и выгружать регистр бухгалтерии, а документы подтянутся как реквизит [Регистратор] того же регистра?
Да, такой вариант, наверное, подошел бы.
(110) На текущий момент, например, перенос за 2008 год не перенес проводки нескольких документов по типовым правилам переноса.
Для самописных добавил ПКГС Хозрасчетный, тестирую.
(111) Свернуть нельзя.
Не в тему конечно, но мне интересно, почему вообще база должна сворачиваться. Почему в 1С так принято? Может уже пора отходить от таких стереотипов.
Саперы вон, как я знаю, с начала времен ведут учет, и никогда не ведут речи о свертке базы. Почему в 1С обязательно сворачивать? Это свидетельство того, что 1С загнется на больших данных?
(113) раз уж вы против свертки, то лучше продолжайте сворачивать в разрезе документов.
Кстати насколько помню, в 2.0 во всех доках есть флажок ручного изменения проводок, в этом случае проводки после проведения не изменяются.
А почему кстати на 2.0 на не сразу на 3.0 перенос?
Саперы вон, как я знаю, с начала времен ведут учет, и никогда не ведут речи о свертке базы. Почему в 1С обязательно сворачивать? Это свидетельство того, что 1С загнется на больших данных?
(113) раз уж вы против свертки, то лучше продолжайте сворачивать в разрезе документов.
Кстати насколько помню, в 2.0 во всех доках есть флажок ручного изменения проводок, в этом случае проводки после проведения не изменяются.
А почему кстати на 2.0 на не сразу на 3.0 перенос?
(114),(115),(116) Все правильно и потом на 3.0 бухи не хотят, тем паче, что там переход конвертированием, вроде, делается.
В идеале, конечно, переход на чистую 2.0 с остатками на 2014 и мониторингом старой базу, ибо, налогового учета, просто не ведется в должном объеме. Базы наследственные из Абакуса -> 7.7 -> 8.0 - 8.1 - 8.2 ->8.2(2.0), так что......
В идеале, конечно, переход на чистую 2.0 с остатками на 2014 и мониторингом старой базу, ибо, налогового учета, просто не ведется в должном объеме. Базы наследственные из Абакуса -> 7.7 -> 8.0 - 8.1 - 8.2 ->8.2(2.0), так что......
(115) по поводу Оприходования;
По памяти (поэтому в названиях обработчиков и переменных могу ошибаться)
1) Если реализация выгружается не только в оприходование, то надо убирать синхронизацию по ИД (на второй вкладке ПКО кажется первая галка);
2) Для склада можно сделать по разному. Один из вариантов такой:
Можно передавать Контрагента в Параметр (в ПКС указывается выгрузка в параметр). Если при этом сам контрагент не должен выгружаться, то можно строковоого типа (код или наименгование контрагента). На основании данного параметра в обработчике события ПослеЗагрузкиОБъекта, используя переменную ПараметрыОбъекта.ИмяПараметра, присвоить склад в оприходовании
Это обычный код на языке 1С
Если ПараметрыОбъекта.ИмяПараметра = ... Тогда
ОБъект.Склад = ...
КонецЕсли;
По памяти (поэтому в названиях обработчиков и переменных могу ошибаться)
1) Если реализация выгружается не только в оприходование, то надо убирать синхронизацию по ИД (на второй вкладке ПКО кажется первая галка);
2) Для склада можно сделать по разному. Один из вариантов такой:
Можно передавать Контрагента в Параметр (в ПКС указывается выгрузка в параметр). Если при этом сам контрагент не должен выгружаться, то можно строковоого типа (код или наименгование контрагента). На основании данного параметра в обработчике события ПослеЗагрузкиОБъекта, используя переменную ПараметрыОбъекта.ИмяПараметра, присвоить склад в оприходовании
Это обычный код на языке 1С
Если ПараметрыОбъекта.ИмяПараметра = ... Тогда
ОБъект.Склад = ...
КонецЕсли;
(121) adva,
думаю сделать так:
сопоставлять контрагента и организацию (тот же контрагент, но "с другой стороны стола" - по ИНН, то есть
Если ЗначениеЗаполнено(Источник.Контрагент.ИНН) тогда
если Источник.Контрагент.ИНН = "312122500427" Тогда
ОргНайм = Справочники.Организации.НайтиПоРеквизиту("ИНН","312122500427");
СкладНайм = Справочники.Склады.НайтиПонаименованию("ИмяСкладаОрганизации");
иначеесли ................ Тогда
....................
конецесли;
Объект.Организация = ОргНайм;
Объект.Склад = СкладНайм;
конецесли;
Попробую вставить это в "После загрузки".
Заодно - новый номер документу будет ли присвоен, если во вкладке "Настройки" установить
"Автоматически генерировать номер или код, если он не задан"?
Или же нужно где-то, предположительно в "После загрузки" указать:
Объект.УстановитьНовыйКод()?
думаю сделать так:
сопоставлять контрагента и организацию (тот же контрагент, но "с другой стороны стола" - по ИНН, то есть
Если ЗначениеЗаполнено(Источник.Контрагент.ИНН) тогда
если Источник.Контрагент.ИНН = "312122500427" Тогда
ОргНайм = Справочники.Организации.НайтиПоРеквизиту("ИНН","312122500427");
СкладНайм = Справочники.Склады.НайтиПонаименованию("ИмяСкладаОрганизации");
иначеесли ................ Тогда
....................
конецесли;
Объект.Организация = ОргНайм;
Объект.Склад = СкладНайм;
конецесли;
Попробую вставить это в "После загрузки".
Заодно - новый номер документу будет ли присвоен, если во вкладке "Настройки" установить
"Автоматически генерировать номер или код, если он не задан"?
Или же нужно где-то, предположительно в "После загрузки" указать:
Объект.УстановитьНовыйКод()?
Подскажите, что и где написать:
Настраиваю правило переноса документа Реализация товаров и услуг в документ Оприходование (УТ 10.3).
Нужно в документе-приемнике изменить организацию (она изменится в зависимости от Контрагента в документе-источнике) и склад - в той же зависимости.
Все нужные организации и склады в приемнике есть.
Не помню как описать поиск в конвертации - сам такое писал полгода назад.
Настраиваю правило переноса документа Реализация товаров и услуг в документ Оприходование (УТ 10.3).
Нужно в документе-приемнике изменить организацию (она изменится в зависимости от Контрагента в документе-источнике) и склад - в той же зависимости.
Все нужные организации и склады в приемнике есть.
Не помню как описать поиск в конвертации - сам такое писал полгода назад.
В УТ 10.3 из центральной в периферийную переносится документ "Реализация Товаров и услуг".
В приемник он должен прийти как "Оприходование товара".
Задача в том, чтобы в документ приемника устанавливать значения Организация и Склад в зависимости от реквизита Контрагент в исходном документе.
В какой обработчик правильно будет вставить и как описать средствами "языка КД" эту процедуру?
Второй вопрос: как рациональнее сделать - через РИБ с убиванием всех справочников и документов до момента начала обмена, или - как выгрузка-загрузка с помощью правил?
В приемник он должен прийти как "Оприходование товара".
Задача в том, чтобы в документ приемника устанавливать значения Организация и Склад в зависимости от реквизита Контрагент в исходном документе.
В какой обработчик правильно будет вставить и как описать средствами "языка КД" эту процедуру?
Второй вопрос: как рациональнее сделать - через РИБ с убиванием всех справочников и документов до момента начала обмена, или - как выгрузка-загрузка с помощью правил?
Для организации можно сделать ПКО Контрагенты в Организации (не забыть КлючВыгружаемыхДанных заполнять в обработчике ПерезВыгрузкой вроде бы). И соответственно в Реализации указать ПКС где: Источник - реквизит.Контрагент, Приемник - реквизит.Организация, правило - ПКО Контрагенты в Организации
(124) adva, (118) bomba, (117) samlab, Подскажите, пожалуйста, как в документе в реквизит (например "Подразделение") установить значение из приемника( Справочник:Подразделения, элемент :"Администрация"). Никак не могу это сделать!:( В ПКС: Источник:Пустой, Приемник: Подразделение, В обработчике : ПередВыгрузкой Значение = Справ.Подр.НайтиПоКоду("000002");
Ошыбка!
СвойствоПриемника = Организация (СправочникСсылка.Организации)
ОписаниеОшибки = Получения элемента по индексу для значения не определенно !!!
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8220)
КодСообщения = 68
Как решить эту проблему?
Ошыбка!
СвойствоПриемника = Организация (СправочникСсылка.Организации)
ОписаниеОшибки = Получения элемента по индексу для значения не определенно !!!
ПозицияМодуля = Обработка.УниверсальныйОбменДаннымиXML.МодульОбъекта(8220)
КодСообщения = 68
Как решить эту проблему?
как всегда - типовой перенос - глюки :
Ошибка исполнения обработчика: ПКО_ПриВыгрузке_ЗарплатаКВыплатеОрганизаций
- Значение не представляет агрегатный объект (Выгрузить)
Ошибка исполнения обработчика: ПКГС_ПередОбработкойВыгрузки_ЗарплатаКВыплатеОрганизаций_Зар плата_ТабличнаяЧасть5
- Значение не представляет агрегатный объект (НайтиЗначение)
Конвертация объекта или получение ссылки: Наша организация (Строка)
Ошибка исполнения обработчика: ПКО_ПриВыгрузке_ЗарплатаКВыплатеОрганизаций
- Значение не представляет агрегатный объект (Выгрузить)
Ошибка исполнения обработчика: ПКО_ПриВыгрузке_ЗарплатаКВыплатеОрганизаций
- Значение не представляет агрегатный объект (Выгрузить)
Ошибка исполнения обработчика: ПКГС_ПередОбработкойВыгрузки_ЗарплатаКВыплатеОрганизаций_Зар
- Значение не представляет агрегатный объект (НайтиЗначение)
Конвертация объекта или получение ссылки: Наша организация (Строка)
Ошибка исполнения обработчика: ПКО_ПриВыгрузке_ЗарплатаКВыплатеОрганизаций
- Значение не представляет агрегатный объект (Выгрузить)
Здравствуйте. Перенесла базу документооборота. Нажала, что это копия. Но теперь мне нужно, чтобы работало "уведомление пользователей". Понимаю, что нужно как-то разблокировать работу с внешними ресурсами, но в этой конфигурации нет ничего подобного. Вот какую ошибку выдает. Подскажите. что делать?
Прикрепленные файлы:
(137)
А какая у вас база?
Если файловая то в папке с базой должен быть какой то файл. После удалении которого блокировка снимается. Можно в принципе все файлы удалить кроме самой базы. И потом повторно запустить.
Если серверная тогда нужно запустить приложение "Администрирование серверов 1С Предприятия". И там уже в свойстве базы убрать галку блокировка.
А какая у вас база?
Если файловая то в папке с базой должен быть какой то файл. После удалении которого блокировка снимается. Можно в принципе все файлы удалить кроме самой базы. И потом повторно запустить.
Если серверная тогда нужно запустить приложение "Администрирование серверов 1С Предприятия". И там уже в свойстве базы убрать галку блокировка.
что то не до конца понятно :(
есть реквизит в приемнике СпособЗачетаАванса = Перечисления.СпособыЗачетаАванса.
В источнике нет ничего такого, хочется заполнять просто автоматом.
В документе ПКО ИмпортГТД добавляю ПКС СпособЗачетаАванса с таким типом со стороны приемника, а со стороны источника пусто. Правило пустое.
После выгрузки стоит (Значение = Перечисления.СпособыЗачетаАвансов.Автоматически;)
На выгрузке не ругается, но при загрузке ничего и не заполняется :(
есть реквизит в приемнике СпособЗачетаАванса = Перечисления.СпособыЗачетаАванса.
В источнике нет ничего такого, хочется заполнять просто автоматом.
В документе ПКО ИмпортГТД добавляю ПКС СпособЗачетаАванса с таким типом со стороны приемника, а со стороны источника пусто. Правило пустое.
После выгрузки стоит (Значение = Перечисления.СпособыЗачетаАвансов.Автоматически;)
На выгрузке не ругается, но при загрузке ничего и не заполняется :(
(141)
Если правило пустое, то попробуйте
Выражение = Перечисления.СпособыЗачетаАвансов.Автоматически;
или
Значение = "Автоматически";
т в приемнике СпособЗачетаАванса = Перечисления.СпособыЗачетаАванса.
В источнике нет ничего такого, хочется заполнять просто автоматом.
В документе ПКО ИмпортГТД добавляю ПКС СпособЗачетаАванса с таким тип
В источнике нет ничего такого, хочется заполнять просто автоматом.
В документе ПКО ИмпортГТД добавляю ПКС СпособЗачетаАванса с таким тип
Если правило пустое, то попробуйте
Выражение = Перечисления.СпособыЗачетаАвансов.Автоматически;
или
Значение = "Автоматически";
Ребят, привет, а я вот не догоняю что я делаю не так. я в ПКС перед выгрузкой переопределил "Значение", и как бы это значение дальше должно встать в нужное поле вместо стандартного сценария получения этого значения, но этого не происходит и встает опять стандартное значение, хотя щначению я присвоил свое значение....
Вакансии
Аналитик 1С / Бизнес-аналитик
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)
Нижний Новгород
зарплата от 100 000 руб. до 250 000 руб.
Временный (на проект)