Конвертация данных 2. Выгрузка виртуальных объектов (документ Установка цен номенклатуры)

03.02.11

Учетные задачи - Ценообразование, анализ цен

Пример выгрузки цен из конфигурации ТиС 9.2 в БП 2.0
Выгружаются все цены на дату, загрузка происходит в документы Установка цен номенклатуры.
Документы эти - виртуальные, источника в ТиС не имеют.
  1. Создать новое ПКО, Источник - пусто, Приемник - документ УстановкаЦенНоменклатуры
  2. В таблице конвертации свойств добавить свойства ТипЦен, Дата, Комментарий  включить у них признак Поиск. У каждого из этих ПКС источник будет пустым. Значение комментария можно задать непосредственно в правиле.
  3. Там же добавить табличную часть "Товары", в которой есть 3 свойства - Номенклатура, Цена, Валюта.
  4. Для справочников (Номенклатура, Валюта, ТипыЦен) нужно создать правила конвертации заранее.
  5. В обработчик "Перед обработкой" табличной части "Товары" пишем код:
КоллекцияОбъектов = СоздатьОбъект("ТаблицаЗначений");
КоллекцияОбъектов.НоваяКолонка("Номенклатура");
КоллекцияОбъектов.НоваяКолонка("Цена");
КоллекцияОбъектов.НоваяКолонка("Валюта");

ТекТип = Источник.Получить("ТипЦен");
Сообщить("выгружаются цены типа "+СокрЛП(ТекТип));

    Запрос = СоздатьОбъект("Запрос");
    ТекстЗапроса = "
    |Обрабатывать Все;
    |Спр   = Справочник.Номенклатура.ТекущийЭлемент;
    |Группировка Спр без Групп;
    |";

    Если Запрос.Выполнить(ТекстЗапроса)=0 Тогда
        Сообщить("Не удалось выполнить запрос по номенклатуре для выгрузки цен!");
        Возврат 1;//это Отказ
    КонецЕсли;

    ТЗ = "";
    Запрос.Выгрузить(ТЗ);

ТЗ.ВыбратьСтроки();
Пока ТЗ.ПолучитьСтроку() = 1 Цикл

    Если ПустоеЗначение(ТЗ.Спр)=1 Тогда
        Продолжить;
    КонецЕсли;

    ЦенаЦены = 0;

    Рез = глВернутьЦену(ТЗ.Спр, ТекТип, ДатаОкончания, ЦенаЦены);

    Если Рез=0 Тогда
        Продолжить;
    КонецЕсли;

    КоллекцияОбъектов.НоваяСтрока();
    КоллекцияОбъектов.Номенклатура = ТЗ.Спр;
    КоллекцияОбъектов.Цена         = ЦенаЦены;
    КоллекцияОбъектов.Валюта       = "643";//правило принимает строку с кодом валюты в качестве источника

КонецЦикла;
  1. Создать Правило выгрузки данных для этого Правила конвертации объектов, указать что выборка будет выполняться произвольным алгоритмом
  2. В обработчике "Перед обработкой" правила выгрузки данных пишем код:
ВыборкаДанных = СоздатьОбъект("СписокЗначений");
Запрос = СоздатьОбъект("Запрос");
ТекстЗапроса = "
|Обрабатывать Все;
|Спр   = Справочник.ТипыЦен.ТекущийЭлемент;
|Группировка Спр;
|";

Если Запрос.Выполнить(ТекстЗапроса)=0 Тогда
    Сообщить("Не удалось выполнить запрос по типам цен для выгрузки цен!");
    Возврат 1;//это Отказ
КонецЕсли;

Пока Запрос.Группировка(1)=1 Цикл
    Объект = СоздатьОбъект("СписокЗначений");
    Объект.ДобавитьЗначение(Запрос.Спр,"ТипЦен");
    Объект.ДобавитьЗначение(СокрЛП(Запрос.Спр.Наименование),"Информация");
    Объект.ДобавитьЗначение(ДатаОкончания,"Дата");
    Объект.ДобавитьЗначение("Выгрузка всех цен","Комментарий");
    ВыборкаДанных.ДобавитьЗначение(Объект,"Объект");
КонецЦикла;
  1. Формируем правила, модуль для обработки выгрузки из 7.7, пользуемся.

См. также

Перенос данных 1C Программист Бухгалтер Платформа 1С v8.3 Оперативный учет 7.7 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Налоговый учет Управленческий учет Платные (руб)

Переносится из типовой конфигурации «Торговля и Склад», реакции 9.2 платформы «1С:Предприятие 7.7» в типовую конфигурацию «Бухгалтерия предприятия», редакции 3.0 платформы «1С: Предприятие 8.3» следующие документы и их операции (с соблюдением всех соответствующих проводок): Поступления товаров и услуг (в т.ч. комиссия), Реализации товаров и услуг (в т.ч. комиссия), ПКО и РКО, выписки банка, счета фактуры (выданные и полученный), Возвраты от покупателей и поставщику, Заявка Покупателя, Инвентаризация и другие (всего 28 видов документов, смотрите описание, приложенное к обработке)

11988 руб.

30.06.2014    65432    105    96    

113

Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Торговля и склад 7.7 1С:Бухгалтерия 3.0 1С:Управление торговлей 11 Россия Бухгалтерский учет Управленческий учет Платные (руб)

Обработка позволяет выгружать данные из ТиС 7.7 в конфигурации 8.3 для сдачи отчетности, для переноса данных при переходе на 8.3, для организации обмена внутри компании при использовании разных версий 1С в структурных подразделениях или формирования отгрузочных накладных для клиентов.

6000 руб.

18.05.2020    23630    64    39    

38

Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 Платформа 1C v8.2 1С:Управление торговлей 10 1С:Комплексная 7.7 Россия Управленческий учет Платные (руб)

Начните вести учет в УТ 10.3! Перенесите все свои данные в УТ 10.3 в любом месяце года и продолжите вести учет! Программа перенесёт любое количество баз с документами и остатками в больших количествах. Обработка выгрузки выполнит проверку исходных данных и сформирует отчет о найденных ошибках в справочниках и документах. Партии переносятся с себестоимостью. Штрихкоды номенклатуры загружаются. Цена переносится. Автор консультирует.

8400 руб.

17.03.2021    15999    5    13    

6

Зарплата Перенос данных 1C Программист Бухгалтер Бухгалтерский учет 7.7 Сложные периодические расчеты 1С:Бухгалтерия 7.7 1С:Зарплата и Управление Персоналом 3.x Россия Бухгалтерский учет Платные (руб)

Как известно, Бухгалтерия 7.7 не имеет штатной возможности для обмена с ЗУП 3.1. Данная разработка пригодится тем, кто перешел с ЗиК 2.3 на ЗУП 3.1, но вынужден по каким-то своим причинам оставаться на Бухгалтерии 7.7.

18000 руб.

29.09.2020    13844    2    0    

5

SALE! 10%

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Бухгалтерия 7.7 1С:Бухгалтерия 3.0 Россия Бухгалтерский учет Платные (руб)

Перенос данных из 1С:Бухгалтерия 7.7 в БП 3.0 | Продукт является развитием и исправлением ошибок стандартной обработки для выгрузки данных из 1С Бухгалтерии 7.7 в Бухгалтерию 3.0 | Перенос из 7.7 является сложным, и на рынке сложно найти специалистов 1С по "семерке" - сотрудники помогут вам выполнить переход в рамках техподдержки предлагаемого переноса данных!

55778 50200 руб.

26.05.2020    35097    10    73    

16

Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Конвертация данных Бесплатно (free)

При переходе на новую версию 1С в период параллельной эксплуатации может возникнуть необходимость обратной конвертации данных (по правилам КД версии 2.1) из 1С:Предприятие 8.3 в 1С:Предприятие 7.7 для переноса данных из 1С:Предприятие 8.3 в 7.7. Сделать это поможет следующая инструкция по КД2 о том, как создать новую конвертацию из 8.3 в 7.7, сохранить модуль и правила загрузки данных, сделать загрузку данных. КД2.

17.10.2019    15254    ksnik    0    

16

Файловый обмен (TXT, XML, DBF), FTP Перенос данных 1C Программист Платформа 1С v7.7 Платформа 1С v8.3 1С:Комплексная 7.7 1С:ERP Управление предприятием 2 1С:Комплексная автоматизация 2.х Абонемент ($m)

Разработка позволяет перенести остатки по всем счетам бух. учета из "1С:Комплексная конфигурация, редакция 4.5 (7.7)" в программу "1С:Управление предприятием ERP 2.0", на выбранную дату начала ведения учета. Также переносятся документы за период и вся необходимая справочная информация. Конфигурация "1С:Управление предприятием ERP 2.0" является полностью типовой.

5 стартмани

11.01.2019    16004    39    sulig    14    

13
Комментарии
Подписаться на ответы Инфостарт бот Сортировка: Древо развёрнутое
Свернуть все
1. Rusmus 45 03.02.11 10:17 Сейчас в теме
Полезно для начинающих.

Могу предложить дополнения:
1. Раз в ТЧ документа гарантировано нужно указывать известную заранее валюту, можно в обработчике ПослеЗагрузки правила конвертации документа находить её и подставлять в ТЧ. Тогда не понадобится правило конвертации валюты, свойство конвертации и строка 'КоллекцияОбъектов.Валюта = "643";'

2. В правиле выгрузки данных можно указать стандартную выгрузку из источника Справочник.ТипЦен и попавшие в выборку элементы сохранять в параметре (в обработчике ПриВыгрузки, дописав еще "Отказ=1;"). А в обработчике ПослеВыгрузки собирать данные и вызывать метод ВыгрузитьПоПравилу(..). Это даст пользоваться выгодами отбора по типу цен и соберет весь код в обработчиках одного объекта (правила выгрузки).


2. nicxxx 255 03.02.11 11:45 Сейчас в теме
если в пустую базу грузишь, то это виртуальное правило для валюты сработает, а в ПослеЗагрузки - нет, потому что не найдет элемента справочника.
отбор по типу цен проще мне кажется сделать через реквизит на форме обработки выгрузки. (я просто пока не понял твою идею, голова к вечеру уже не соображает)
5. Rusmus 45 03.02.11 15:37 Сейчас в теме
(2)
и в ПослеЗагрузки можно создать нужный элемент валюты, заодно прописав ему наименование, параметры прописи и т.д. Только это не нужно, ведь даже в новой базе при первом запуске записываются основные валюты, ведь так?
предложение по отбору - вообще не критично. это для удобства отладки, чтобы была возможность уменьшить число выгружаемых объектов. По хорошему, думаю, лучше, чтобы был отбор по номенклатуре.
3. Andzhej 03.02.11 13:00 Сейчас в теме
Код только для 7.7, а для 8.х нету :( . Заберите из описания "Документация для 1С: Предприятие 8.0; 1С: Предприятие 8.1; 1С: Предприятие 8.2".
6. nicxxx 255 04.02.11 03:41 Сейчас в теме
(3) для 8.х кода не требуется
(4) не слабо, но зачем? эта статья - пример как выгрузить виртуальный документ (без источника). и дело не в ценах, можно таким образом и продажи сводно за день выгружать.
(5) все верно, создаются. а для отладки уже неохота доделывать, главное - что у меня заработало :)
4. пользователь 03.02.11 13:38
Сообщение было скрыто модератором.
...
7. youdeevee 04.09.11 22:21 Сейчас в теме
И все дружно встанет колом, когда перейдет на 100000-ю строку при загрузке ;)
8. powerpc 225 21.09.11 23:45 Сейчас в теме
А можете подсказать как сделать выгрузку остатков из ТиС 9 (1с77) в УТ 10.3 (1с82) ? На выход 7.7 запросом сформировать остатки, а на входе документом Оприходование товаров принять их. Нужно для того чтобы не выгружать всю номенклатуру, а только ту по которой есть остатки текущие. Заранее спасибо за помощь
10. alextom81 12 17.10.11 09:29 Сейчас в теме
(8) powerpc,
1. Есть инструкция на диске ИТС по переходу
2. Сам недавно делал - перематерился.
3. Сам теперь буду делать следующим образом:

а. Стандартной обработкой по переходу с 7 на 8 переношу справочники (но только построчно). т.е., отметил галочкой один справочник, выгрузил в XML, загрузил, проверил.
б. Также поступил с остатками (тоже построчно - по-галочно)
в. Остатки ТМЦ - не трогаю !!!
г. Потом на дату переноса в EXCEL !!! Выгружаю остатки. Если номенклатуры много (у меня было порядка 50.000 наименований), остатки выгружаю по группам товаров
д. Есть у меня обработка специальная, которая из EXcel затягивает остатки, и в одном окне показывает все - сколько должно быть на определенную дату.
Если остатки в Excel и в 8 на определенную дату не соответствуют друг другу, то выводится табличное поле, в котором отражено - товар, остатки 77, остатки 8, разница. После того, как все проверили, запускаем перенос - создается документа "корректировка записей регистров", которая корректирует остатки.

Написал я эту обработку исключительно для того, чтобы скорректировать остатки по товарам на определенную дату (т.к. товар, остатки по которым соответствуют действительности, обработка не выводит), которые у меня поплыли немного после переноса, но, похоже, все остальные переходы с большим количеством номенклатуры буду делать через неё, потому что выверять остатки в трех источниках (77, Excel, 8 ), как-то надежнее.

С Уважением, Томилов Алексей
11. powerpc 225 17.10.11 10:43 Сейчас в теме
(10) alextom81, вам спасибо за инструкцию. 1с спасибо, что без работы не остаемся ))).
9. nicxxx 255 23.09.11 02:48 Сейчас в теме
в пункте 5 надо сделать таблицу подобной таблице товаров документа Оприходование, сделать запрос к регистру остатков.
в пункте 7 - вместо справочника ТипЦен у тебя будет справочник Склады.
12. Scroudge 4 17.01.12 16:22 Сейчас в теме
"....5. В обработчик "Перед обработкой" табличной части "Товары" пишем код:.."

Это в смысле "Перед выгрузкой"?

Чего-то не прокатывает у меня..
Документы создаются, справочники номенкл, типы цен, валюты переносятся,
но документы УстановкаЦен с пустыми табличными частями..
хотя для каждого типа цен документ создался.

не догоняю, где копать?
13. nicxxx 255 18.01.12 03:15 Сейчас в теме
копать обработчик "Перед Обработкой"
http://s018.radikal.ru/i527/1201/2c/f5180c4f6823.jpg
14. Scroudge 4 18.01.12 09:14 Сейчас в теме
Спасибо тебе, добрый человек!
Бояркина с Филатовым курил-курил..
Картинка больше помогла.. ;)
15. Hot_Serg 6 03.04.12 19:03 Сейчас в теме
Спасибо за классную вещь!!! картинка лучше помогла.
16. zhenyat 8 10.07.12 17:56 Сейчас в теме
Подскажите в чем может быть проблема
Отладила выгрузку номенклатуры из 7.7 с созданием единиц измерения и штрихкодов. ПВД и ПКО работают. Номенклатура выгружается, единицы и штрихкоды создаются.

Но когда происходит выгрузка этой номенклатуры в составе каких-либо документов - все единицы измерения пропадают!
Из-за чего это может быть?
17. nicxxx 255 11.07.12 00:10 Сейчас в теме
Единицы пропадают из документов? передвиньте ПКС "Единица" ниже ПКС "Номенклатура" (не знаю, баг это или фича, но подчиненный справочник должен быть ниже в списке, чем владелец)
18. zhenyat 8 11.07.12 11:53 Сейчас в теме
Нет, единицы пропадают из номенклатуры!
ПКС Единицы и так находится ниже
Такое ощущение, что когда идет выгрузка номенклатуры списком - теряется владелец для создаваемых элементов единиц!
19. nicxxx 255 11.07.12 12:04 Сейчас в теме
все правильно, из номенклатуры, надо в основном списке правил конвертаций объектов переместить единицы ниже номенклатуры
20. beard1 27.02.13 15:44 Сейчас в теме
Спасибо за полезную статью!
А как бы устанавливать цены только на ту номенклатуру, которая тянется по ссылке при выгрузке документа, например Реализации?
как то не охота тащить все 100500+ записей цен номенклатуры, когда нужна сотня другая... Что-то никак не разберусь как список номенклатуры забрать из ТЧ Реализации и передать в ПВД для отбора.
21. BTRVODKA 10 15.09.13 04:23 Сейчас в теме
Спасибо за подробную инструкцию!
Оставьте свое сообщение