Один из вариантов переноса данных из 1С 7.7 в 1С 8.Х

Публикация № 61856

Разработка - Обмен данными 1С - Перенос данных из 1С7.7 в 1C8.X

24
Перенос данных — это почти всегда индивидуальный подход. И крайне важно выбрать наиболее подходящий инструмент из множества доступных. Я в этой статье опишу один из вариантов.

Итак, речь пойдет о ADODB. Какие же преимущества мы можем получить используя данный вариант обмена? Во-первых — это скорость работы. Ни OLE, ни файловый обмен не дадут той скорости доступа к базам 1С 7.7, как ADODB. Во вторых — универсальность, то есть его можно применять как в 1С 7.7 (там, правда, есть более удобные механизмы 1С++), так и в 1С 8.Х, да и в принципе везде где поддерживается работа с ADODB.

Первое что нам понадобится — это создать подключение к базе 1С (я буду рассматривать вариант dbf).

Соединение = Новый COMObject("ADODB.Connection"); // Создаем соединение
Соединение.ConnectionString = "Provider=VFPOLEDB.1;Data Source="+СокрЛП(Каталог)+";Extended Properties=dBASE IV;CODEPAGE=cp1251;"; //Внимание! CODEPAGE=cp1251; работает почему-то не везде.
Попытка
     Соединение.Open();
Исключение
     Сообщить(ОписаниеОшибки());
     Возврат;
КонецПопытки;
Соединение.Close();

Дальше нам надо создать команду.

Команда = Новый COMObject("ADODB.Command");
Команда.ActiveConnection = Соединение;

И получить данные.

Команда.CommandText = ТекстЗапроса;
РекордСет = Команда.Execute();

Обход полученных данных можно сделать как:

Пока РекордСет.Eof() = 0 Цикл
    РекордСет.MoveNext();
КонецЦикла;

Но в любой бочке мёда, есть ложка дёгтя. Если в цикле Выполнить запрос, то наш «рекордсет» заполнится новыми данными. Поэтому я бы рекомендовал после запроса переносить данные в «Таблицу значений». Сделать это можно так:

Функция СоздатьТаблицу(РекордСет)
    ТаблицаРезультатаЗапроса = Новый ТаблицаЗначений();
    Если РекордСет.Eof() = 0 Тогда
        Для ит = 0 по РекордСет.Fields.Count - 1 Цикл
            ТаблицаРезультатаЗапроса.Колонки.Добавить(РекордСет.Fields(ит).Name);
        КонецЦикла;
        Пока РекордСет.Eof() = 0 Цикл
            СтрокаТаблицы = ТаблицаРезультатаЗапроса.Добавить();
            Для ит = 0 по РекордСет.Fields.Count - 1 Цикл
                СтрокаТаблицы.Установить(ит, РекордСет.Fields(ит).Value);
            КонецЦикла;
            РекордСет.MoveNext();
        КонецЦикла;
    КонецЕсли;
    Возврат ТаблицаРезультатаЗапроса;
КонецФункции

Сложим все вместе и посмотрим, что у нас получилось.

Функция СоздатьТаблицу(РекордСет)
    ТаблицаРезультатаЗапроса = Новый ТаблицаЗначений();
    Если РекордСет.Eof() = 0 Тогда
        Для ит = 0 по РекордСет.Fields.Count - 1 Цикл
            ТаблицаРезультатаЗапроса.Колонки.Добавить(РекордСет.Fields(ит).Name);
        КонецЦикла;
        Пока РекордСет.Eof() = 0 Цикл
            СтрокаТаблицы = ТаблицаРезультатаЗапроса.Добавить();
            Для ит = 0 по РекордСет.Fields.Count - 1 Цикл
                СтрокаТаблицы.Установить(ит, РекордСет.Fields(ит).Value);
            КонецЦикла;
            РекордСет.MoveNext();
        КонецЦикла;
    КонецЕсли;
    Возврат ТаблицаРезультатаЗапроса;
КонецФункции

Функция ВыполнитьЗапрос(Соединение, ТекстЗапроса)
    Команда = Новый COMObject("ADODB.Command");
    Команда.ActiveConnection = Соединение;
    Команда.CommandText = ТекстЗапроса;
    РекордСет = Команда.Execute();
    Возврат РекордСет;
КонецФункции

Процедура ЗагрузитьСправочник()
    Соединение = Новый COMObject("ADODB.Connection"); // Создаем соединение

    Соединение.ConnectionString = "Provider=VFPOLEDB.1;Data Source="+СокрЛП(Каталог)+";Extended Properties=dBASE IV;CODEPAGE=cp1251;"; // Внимание! CODEPAGE=cp1251; работает почему-то не везде.

    Попытка
        Соединение.Open();
    Исключение
        Сообщить(ОписаниеОшибки());
        Возврат;
    КонецПопытки;

    ТекстЗапроса = "SELECT SC192.CODE AS Код
    |      , SC192.ID AS ID
    |      , SC192.PARENTID AS ГруппаНаименование
    |      , SC192.ISFOLDER AS ЭтоГруппа
    |      , SC192.DESCR AS Наименование
    |      , SC192.SP1817 AS МодельАвто
    |      , SC192.SP194 AS ПолноеНаименовани
    |      , SC192.SP195 AS ЮридическийАдрес
    |      , SC192.SP196 AS ПочтовыйАдрес
    |      , SC192.SP197 AS Телефоны
    |      , SC192.SP198 AS ИНН
    |      , SC192.SP199 AS ДокументСерия
    |      , SC192.SP200 AS ДокументНомер
    |      , SC192.SP201 AS ДокументДатаВыдач
    |      , SC192.SP202 AS ДокументКемВыдан
    |      , V1.CODE AS ВалютаВзаиморасче
    |      , SC192.SP210 AS НомерКарты
    |      , SC192.SP211 AS ГосНомер
    |      , SC192.SP1796 AS Скидка
    |      , SC192.SP1829 AS КПП
    | FROM SC192
    | LEFT JOIN
    | SC95 AS V1 ON
    | SC192.SP203 = V1.ID
    | "+?(ЧастичнаяЗагрузка,"RIGHT JOIN exchange ON SC192.ID = exchange.ID AND exchange.VID = 'Контрагенты'","")+"
    |";

    ТаблицаРезультатаЗапроса = СоздатьТаблицу (ВыполнитьЗапрос(Соединение, ТекстЗапроса));

    Для Каждого СтрокаТЧ ИЗ ТаблицаРезультатаЗапроса Цикл
        ...
        Объект.Наименование = СтрокаТЧ.Наименование;
        Объект.Код = СтрокаТЧ.ID;
        ...
    КонецЦикла;
    Соединение.Close();
КонецПроцедуры

P.S. Данный метод дает и ещё одно преимущество над остальными — это уникальный идентификатор объекта в базе 1С 7.7 («ИмяТаблицы.ID»).

 

P.P.S. Данная статья не ставила целью провести обзор T-SQL или структуры данных 1С. Все это можно найти здесь:

http://www.sql.ru/docs/mssql/tsql_ref/index.shtml

http://www.script-coding.info/v77tables.html

и т.д.

Эпилог.  В 2005 MS SQL появилась прекрасное дополнение - возможность в предложении FOR XML использовать директиву TYPE. Давайте перепишем запрос, что бы убрать лишние действия.

ТекстЗапроса = "
   | SELECT (SELECT SC192.CODE AS Код
   |      , SC192.ID AS ID
   |      , SC192.PARENTID AS ГруппаНаименование
   |      , SC192.ISFOLDER AS ЭтоГруппа
   |      , SC192.DESCR AS Наименование
   |      , SC192.SP1817 AS МодельАвто
   |      , SC192.SP194 AS ПолноеНаименовани
   |      , SC192.SP195 AS ЮридическийАдрес
   |      , SC192.SP196 AS ПочтовыйАдрес
   |      , SC192.SP197 AS Телефоны
   |      , SC192.SP198 AS ИНН
   |      , SC192.SP199 AS ДокументСерия
   |      , SC192.SP200 AS ДокументНомер
   |      , SC192.SP201 AS ДокументДатаВыдач
   |      , SC192.SP202 AS ДокументКемВыдан
   |      , V1.CODE AS ВалютаВзаиморасче
   |      , SC192.SP210 AS НомерКарты
   |      , SC192.SP211 AS ГосНомер
   |      , SC192.SP1796 AS Скидка
   |      , SC192.SP1829 AS КПП
   | FOR XML TYPE, PATCH('CatalogeObject.Номенклатура') ) AS A
   | FROM SC192
   | LEFT JOIN
   | SC95 AS V1 ON
   | SC192.SP203 = V1.ID
   | "+?(ЧастичнаяЗагрузка,"RIGHT JOIN exchange ON SC192.ID = exchange.ID AND exchange.VID = 'Контрагенты'","")+"
   |";

Теперь в 1С достаточно будет следующего кода:

Пока РекордСет.Eof() = 0 Цикл
    ЗаписьXML = Новый ЗаписьXML;
    ЗаписьXML.УстановитьСтроку(РекордСет.Fields(0).Value);
    ЗаписьXML.ПерейтиКСодержимому();
    Объект = ПрочитатьXML(ЗаписьXML);
    Объект.Записать();
    ЧтениеXML.Закрыть();
    РекордСет.MoveNext();
КонецЦикла
24

Скачать файлы

Наименование Файл Версия Размер
Парсер DD и DDS файлов (внешняя обработка дл 8.2)
.epf 7,83Kb
12.03.12
266
.epf 7,83Kb 266 Скачать бесплатно

Специальные предложения

Комментарии
Избранное Подписка Сортировка: Древо
1. Serj1C 476 30.11.09 13:46 Сейчас в теме
Может скорость доступа и выше, но после того как мы прочитали таблицы запросом, эти данные нужно обработать... а они сосвем в не нечитабельном виде... Непонятные имена колонок, непонятные ссылки... Дальше то что?
2. artbear 1156 30.11.09 14:06 Сейчас в теме
Пока минусую, т.к. публикация не показывает проблемы, указанные, например, в (1)
3. awk 692 30.11.09 14:46 Сейчас в теме
Serj1C - правда? У меня читабельны...
	ТекстЗапроса = "SELECT SC192.CODE AS Код
	|		, SC192.ID AS ID 
	|		, SC192.PARENTID AS ГруппаНаименование 
	|		, SC192.ISFOLDER AS ЭтоГруппа 
	|		, SC192.DESCR AS Наименование 
	|		, SC192.SP1817 AS МодельАвто 
	|		, SC192.SP194 AS ПолноеНаименовани 
	|		, SC192.SP195 AS ЮридическийАдрес 
	|		, SC192.SP196 AS ПочтовыйАдрес 
	|		, SC192.SP197 AS Телефоны 
	|		, SC192.SP198 AS ИНН 
	|		, SC192.SP199 AS ДокументСерия 
	|		, SC192.SP200 AS ДокументНомер 
	|		, SC192.SP201 AS ДокументДатаВыдач 
	|		, SC192.SP202 AS ДокументКемВыдан 
	|		, V1.CODE AS ВалютаВзаиморасче 
	|		, SC192.SP210 AS НомерКарты 
	|		, SC192.SP211 AS ГосНомер 
	|		, SC192.SP1796 AS Скидка 
	|		, SC192.SP1829 AS КПП 
	| FROM SC192
	| LEFT JOIN
	| SC95 AS V1 ON
	| SC192.SP203 = V1.ID
	| "+?(ЧастичнаяЗагрузка,"RIGHT JOIN exchange ON SC192.ID = exchange.ID AND exchange.VID = 'Контрагенты'","")+"
	|";
        ТаблицаРезультатаЗапроса = СоздатьТаблицу (ВыполнитьЗапрос(Соединение, ТекстЗапроса));
	Для Каждого СтрокаТЧ ИЗ ТаблицаРезультатаЗапроса Цикл
     ...
		Объект.Наименование = СтрокаТЧ.Наименование;
		Объект.Код = СтрокаТЧ.ID;
     ...
	КонецЦикла;
Показать
xpym-xpym; +1 Ответить
4. Serj1C 476 30.11.09 15:30 Сейчас в теме
(3) > Перенос данных — это почти всегда индивидуальный подход

Иммет ли смысл ради одного переноса на столько глубоко ковырятся в физической структуре ИБ? Я бы предпочел использовать типовую КД.
Разработка быстрее, отладка проще.
По-моему время выгрузки стоит дешевле, чем время разработки.
5. awk 692 30.11.09 17:16 Сейчас в теме
Я не настаиваю.. Просто, когда позиций номенклатуры 38 000, а аналогов 108 000. Выгрузка худо-бедно идёт за часа два. А загрузка - восемь. И того 10 часов (при режиме работы 24/7 - это не приемлемая цена). ADODB - 40 минут (без оптимизации на dbf, с оптимизацией, да на MSSQL минут десять будет работать). При этом встает вопрос о реквизите синхронизации. Код? Наименование? И то и другое пользователи легко могут изменить. А поскольку я привык смотреть на структуру баз 1с 7.7 - то сложности особо не вижу (скорость написания запроса аля в статье ну раза в два в три дольше чем КД). А отладка в моём варианте проще, так как происходит в конфигураторе..
6. Serj1C 476 01.12.09 07:19 Сейчас в теме
(5) Я тоже не настаиваю.
Допустим, на выгрузке экономия 1 час 50 минут.
Теперь загрузка. 8 часов. Как ее оптимизировать?
7. awk 692 01.12.09 07:51 Сейчас в теме
40 минут это вместе с загрузкой...
11. Serj1C 476 01.12.09 10:53 Сейчас в теме
(7) Поясните за счет чего.
8 часов и 40 минут... Нас кто-то вводит в заблуждение
8. ACE$ 102 01.12.09 08:41 Сейчас в теме
интересно, да... структуру можно посмотреть в соответствующих файлах. Хотя разбираться в ней придется довольно долго. За идею +
9. artbear 1156 01.12.09 09:32 Сейчас в теме
(0) Тема все-таки до конца не раскрыта.
Например, не указал, где брать названия таблиц, полей, индексов? Понятно, что в дд-файле, но не все это знают :)
Периодические реквизиты и длинные строки так не выгрузишь :(
и т.д. и т.п.
10. afanasko 35 01.12.09 10:28 Сейчас в теме
Объясняю ситуацию:
вот есть реквизит "ВалютаВзаиморасчетов". Это ссылка на элемент справочника. У неё может быть родитель, у родителя может быть свой родитель, владелец или реквизит также ссылающийся на элемент какого-то справочника. А если тип реквизита - перечисление?
Как с помощью данного варианта можно рекурсивно обработать все ссылки загружаемых элементов?

Второй вопрос: а для каждой базы необходимо переписывать имена таблиц и столбцов? Или есть какой-то способ абстрагироваться от физического хранения?

Такой способ можно использовать для единичной загрузки из 1С в стороннюю учетную систему, но для обмена между двумя 1С ничего лучше чем ОЛЕ, при всех его недостатках, еще не придумали. Поэтому не изобретайте велосипеды, ИМХО.
Минус.
14. xpym-xpym 01.12.09 13:14 Сейчас в теме
по поводу (10) (12) и (3)
Второй вопрос: а для каждой базы необходимо переписывать имена таблиц и столбцов? Или есть какой-то способ абстрагироваться от физического хранения?

Без знания структуры данных - не отвечу.

интересно сколько времени займет именно подготовка для не типовой или правленой конфы для приведения в читабельный вид

з.ы. автор статью дополнит я надеюсь
12. awk 692 01.12.09 11:12 Сейчас в теме
Re: Тема все-таки до конца не раскрыта.
Для того кто не знает где взять структуру - надо читать не эту статью, а статьи на сайте http://script-coding.info/. Переодические реквизиты и длинные строки выгрузить вполне реально, это то же тема отдельной статьи

Re: 8
Не долго поверьте...

Re: 10
Первый вопрос - http://script-coding.info/. Без знания структуры данных - не отвечу. Нужна конкретная задача.
Второй вопрос - переписывать не надо, а дать псевдонимы полей, для удобства себя любимого, можно.

Re: 11
К сожалению не ввожу.. XML вещь прекрасная, но для хранения больших объемов данных не подходящая. Не восемь, а 10 часов против сорока минут. 1С бездарно использует хранилища информации - это не секрет. Для DBF варианта - это ещё терпимо, но когда она перебирается на SQL сервера... Скорость достигается, за счет отсутствия поиска и конвертации объектов методами 1С (кроме НайтиПо...).

P.S. Ругаетесь, но никто не написал неинтиресно - это приятно.
13. artbear 1156 01.12.09 11:47 Сейчас в теме
(12) Так я тебе и намекал, а сейчас прямо говорю:
добавь в описание ссылки на скрипт-кодинг, которые раскрывают то, что ты не указал.
И будет замечательная, законченная публикация :)

(11) Цифры вполне реальные
15. awk 692 01.12.09 14:23 Сейчас в теме
1. Не дополню. Статья закончена. Могу только новую написать вопрос какая тема.

2.
Первый вопрос - http://script-coding.info/. Без знания структуры данных - не отвечу. Нужна конкретная задача.


А ответ на второй вопрос:
Второй вопрос - переписывать не надо, а дать псевдонимы полей, для удобства себя любимого, можно.


Читабельность определяется квалификацией. F = m*a - читабельно? А :
Д | K
_____
50|62

16. Serj1C 476 01.12.09 17:55 Сейчас в теме
Парсер DD ))
Уже прикольно
17. awk 692 01.12.09 18:08 Сейчас в теме
Парсеров этих... Много, если одним словом. У меня на C# мной написаный где-то дома валяется... Этот сегодня написал, как внешний отчет для 8.2. Если кто подскажет как формируется _IDRRef можно и простенькую конвертацию написать...
18. osokolov 02.12.09 12:14 Сейчас в теме
А зачем вот так-то, через ...опу ?
Выбрать данные из 7.7 стандартными средствами - не проблема, гораздо больше времени уйдет на создание объектов в базе-приемнике и проведении документов в ней.
19. awk 692 02.12.09 13:27 Сейчас в теме
1. Обмен через OLE не плохой вариант.

Плюсы:
Простота реализации.

Минусы:
Долго подключается (версия 7.7).
Проблемы с передачей параметров.
Нужно иметь учетную запись и пароль (если не ломать).
Базы должны быть связаны сетью хотя бы 10 Мб/с.

Итог: Очень хорошо подходит для обмена внутри локальной сети.

2. Файловый обмен.

Плюсы:
Не зависит от расположения баз.

Минусы:
Обмен состоит из двух частей (выгрузка, загрузка). Для каждой надо писать обработку, с помощью конвертации данных или без нее.
Парсеры файлов не блещут скоростью работы.

Итого: Подходит для обмена если базы разделены медленным каналом или таковой отсутствует.

3. Так называемые "прямые запросы".

Плюсы:
Скорость работы не сравнима с первыми двумя (выше на порядок).
При должном опыте реализация достаточно проста. Не сложнее конвертации или OLE.
Доступна на медленных каналах (требует настройки доступа если происходит через интернет).

Минусы:
Требует знания T-SQL, структуры базы 1С.

Итого: Если не уверены в своих силах то: НИКОГДА НЕ ПРИ КАКИХ ОБСТОЯТЕЛЬСТВАХ НЕ ИСПОЛЬЗОВАТЬ!!! В противном случае идеальный вариант во многих случаях.

Общие итоги: Что нужно в конкретном случае определяется конкретной задачей. Где-то выгоден OLE, где-то файловый обмен. А где-то без "прямых запросов" не обойтись (если не отказываться от решения задачи).
20. Bosma 69 04.12.09 13:07 Сейчас в теме
(19)....Нужно иметь учетную запись и пароль (если не ломать).

странное замечание...
что за обмен, если и учетных данных не знаем? похоже на воровство
21. awk 692 04.12.09 17:10 Сейчас в теме
(20) Сто рублей валяется на дороге. Ты шел мимо, нагнулся, поднял - это воровство или находка?
22. artbear 1156 07.12.09 16:23 Сейчас в теме
23. Ветер в поле 13.01.10 09:38 Сейчас в теме
Подумав, решил, не писать :)
24. nicxxx 234 11.03.12 06:27 Сейчас в теме
побуду некропостером :)
(0) если ADO совместить с УРБД (v8), то 40 минут легко превращаются в 5 даже для DBF-базы. смысл в том, чтобы сформировать xml-файл обмена для 1С 8 по данным из 1С 7.7
25. awk 692 12.03.12 13:32 Сейчас в теме
(24) nicxxx, Я немного развил и использовал SELECT ... FOR XML ... в итоге получил готовый XML для загрузки.
26. shoy 19 03.05.12 11:11 Сейчас в теме
опробовал и обрадовался ;)
такой подход понравился! плюсую
27. Jogeedae 38 26.03.15 05:29 Сейчас в теме
Добрый день! у меня чего-то не взлетело :(

Вот запрос:

SELECT
_IDRRef AS ID,
_Code AS Код,
_Description AS Наименование
FROM _Reference34
FOR XML AUTO,
binary base64 --использую эту директиву чтобы не ругалось


Получаю результат:

<_Reference34 ID="mHw/dfd7diZIb99hmH6Fqw==" Код="00000" Наименование="Федеральный" />
<_Reference34 ID="pnWd7NphzC1DPrBdYHGRGQ==" Код="00000" Наименование="Муниципальный" />
<_Reference34 ID="vkwlYLrOXuNJjUN1w8XLkg==" Код="00000" Наименование="Региональный" />


это нормально: ID="mHw/dfd7diZIb99hmH6Fqw==" или можно было получить ссылку в виде "0x..." или в каком-либо более удобном виде?

Десериализация этих ссылок как должна происходить? Совсем непонятно.
Нужно описание объектов в XDTO готовить?

Надеюсь на помощь! Заранее спасибо!
28. awk 692 26.03.15 10:57 Сейчас в теме
(27) Jogeedae,
1. _IDRRef имеет тип binary(16), то есть двоичные данные. Его для начала надо бы в строку 36 преобразовать. Под рукой скрипта нет, но гугль помнить должен.
2. "binary base64 --использую эту директиву чтобы не ругалось" что бы не ругалось, надо понять на что ругается, а не ставить заглушки.
3. Если вы хотите стандартизировать объект и сделать его неизменным от времени и базы, то да. А если готовы подгонять запросы под, то нет.
Оставьте свое сообщение

См. также

Методика пошагового перехода из решения для платформы 7.7 "Торговля и склад" на решение для платформы 8 "Управление торговлей" 12

Статья Программист Нет файла v7.7 v8 УТ10 1С7:ТиС Оптовая торговля, дистрибуция, логистика Россия БУ УУ Оптовая торговля Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Данная статья предваряет публикацию подсистемы для одностороннего ONLINE обмена документами и справочниками между базами данных для процесса поэтапного перехода из "семерки" в "восьмерку" для случаев распределенной совместной работы большого количества пользователей, не допускающих резких скачкообразных внедрений с рисками остановки процессов продаж, поставок, доставок или складских сборок.

31.10.2016    12101    vugluscr1991    27       

Перенос данных из семерки по частям 9

Статья Программист Нет файла v7.7 v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

При переносе баз из семерки в восьмерку, если база данных достаточно большая, может возникнуть ошибка «msxml3.dll: Недостаточно памяти для завершения операции». В этом случае советуют переносить данные по частям. Но возможности выгрузки по частям в стандартной обработке сильно ограничены: можно выгрузить отдельно справочники, остатки на начало года, обороты, документы. Обычно такая выгрузка по частям не исправляет ситуацию, т.к. основной объем данных сосредоточен обычно в одном справочнике, значит нужно выгружать отдельно этот справочник, мало того, может понадобиться его выгружать в несколько этапов. Попытаюсь описать метод решения, который использую в таких случаях.

01.01.2015    24371    32ops    5       

Получение в 1С82 списка баз 1С77 на сервере (управляемые формы) 2

Статья Системный администратор Программист Нет файла v8 Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Получение в 1С82 списка баз 1С77 на сервере (управляемые формы) для подключения к 1С77 через OLE.

23.12.2013    6513    sdf1979    3       

Отладка правил обмена 7.7, 8 173

Статья Программист Нет файла v8 КД Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Обмен через XML Перенос данных из 1C8 в 1C8

Отладка правил обмена всегда была для меня больной темой, пока наконец-то не разобрался. В интернете мало тем, посвященных этому, поэтому решил написать небольшую инструкцию по этому поводу. Очень надеюсь, что она будет кому-то полезна. С радостью выслушаю недочеты.

29.10.2013    47534    pyrkin_vanya    70       

Чтение dbf-файла через ODBC Foxpro драйвер 26

Статья Программист Нет файла v8 Windows Бесплатно (free) Файловые протоколы обмена, FTP

Иногда возникает потребность прочитать dbf-файл, который xbase не понимает.

11.07.2013    30444    zels    18       

Случай из практики: об одной нетривиальной ситуации при обмене УНФ-БП 24

Статья Системный администратор Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Работал себе обмен между УНФ и БП, а потом как-то засбоил - то проходит, то не проходит. О том, что это было...

11.07.2013    8276    uncle_o    10       

Корректировка заголовка DBF-файла, сформированного в 1С, для его связи с индексным файлом для дальнейшей работы с ним из внешних приложений (FoxPro 2.6, Visual FoxPro и пр.) 9

Статья Программист Нет файла v8 1cv8.cf Windows Бесплатно (free) Файловые протоколы обмена, FTP

Программный код, корректирующий заголовок DBF-файла, сформированного в 1С, для его связи с индексным файлом для далнейшей работы с ним из внешних приложений (FoxPro 2.6, Visual FoxPro и пр.)

18.03.2013    11894    iRounder    19       

Перенос данных из бухгалтерии 7.7 в 8.2 Бухгалтерия предприятия КОРП 38

Статья Программист Нет файла v8 БП2.0 Россия Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

В статье описан процесс переноса данных из конфигурации 7.7 Бухгалтерский учет, версия 4.5 в конфигурацию 8.2 Бухгалтерия предприятия КОРП, редакция 2.0 с примером изменения правил переноса.

24.01.2013    82833    Программист 1С    15       

Подсистема "COMExchange": прямой доступ к EXCEL через ADO 8

Статья Системный администратор Программист Нет файла v8 1cv8.cf УТ10 УПП1 Россия Windows Бесплатно (free) Файловые протоколы обмена, FTP Загрузка и выгрузка в Excel Внешние источники данных

На примере этой, очень популярной, темы наглядно продемонстрированы нетривиальные возможности консоли запросов в составе подсистемы: 1. использование событий выполнения запроса (в том числе для запуска на выполнение других запросов) 2. запуск на выполнение запроса в цикле с подстановкой значений параметров из таблицы значений.

20.01.2013    21143    yuraos    7       

Прием конвертации, который позволит решить много задач 211

Статья Программист Нет файла v8 ЗУП2.5 1С7:Бух КД Зарплата Управление персоналом (HRM) Бесплатно (free) Практика программирования Перенос данных из 1С7.7 в 1C8.X

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

16.01.2013    75209    SergeMalikov    44       

Связь 8.2 и 7.7 по OLE управляемое приложение (нюансы подключения) 12

Статья Системный администратор Программист Нет файла v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Казалось бы, тривиальная задача - связать 2 этих приложения. Многие это не раз успешно делали, море статей и примеров... А я как всегда наступил на грабли :(

03.01.2013    22265    wunderland    3       

Конвертация данных 2.1 (2.1.3.1) 1С 7.7 - 1С 8.Х передача параметра ПКО 14

Статья Системный администратор Программист Нет файла v7.7 v8 КД Бесплатно (free) Практика программирования Перенос данных из 1С7.7 в 1C8.X

Передача параметров по умолчанию доступна только для баз 1С 8.х -1С 8.х. Показан пример, как передать параметры из 1С 7.7 - 1С 8.х

10.12.2012    22111    serg_gres    6       

Видео. Перенос данных из базы 1С:Торговля и склад 9.2 (7.7) в 1С:Управление торговлей 11 (8.2) 22

Статья Системный администратор Программист Нет файла v8 УТ10 1С7:ТиС УУ Windows Бесплатно (free) Администрирование данных 1С Перенос данных из 1С7.7 в 1C8.X

В этом видеокурсе будет продемонстрирована процедура переноса данных из программы 1С:Торговля и склад, начиная с редакция 9.2.973 и более поздние версии в 1С:Управление торговлей, редакция 11.0.9 и более поздние версии.

08.11.2012    31701    ИТ-Терминал    2       

УНФ РИБ 35

Статья Системный администратор Программист Нет файла v8 УНФ Россия Бесплатно (free) Распределенная БД (УРИБ, УРБД) Перенос данных из 1С7.7 в 1C8.X

В типовой УНФ нет РИБа. Исправляем этот недостаток, используя УТ 11 и ИТС. Статья подойдет для настойки распределенки в любой конфе на базе БСП.

16.10.2012    36694    ptkrzy    23       

Переход на "1С: Бухгалтерию 8". Часть 1. Перенос данных 27

Статья Системный администратор Программист Нет файла v7.7 v8 БП2.0 1С7:Бух Россия Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

В данной публикации рассматривается перенос данных из "1С:Бухгалтерии 7.7" в "1С:Бухгалтерию 8".

03.09.2012    34324    Стил    11       

Групповая обработка ПКО и ПКС в КД 10

Статья Системный администратор Программист Нет файла v8 КД Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Перенос данных из 1C8 в 1C8 1С7.7<->1C7.7

Встраивание типовой обработки "Универсальный подбор и обработка объектов" в КД для групповой обработки ПКО и ПКС

05.07.2012    18826    Totoro    3       

Конвертация данных 2: передача параметров из выгрузки в загрузку (в том числе и на "ранние" стадии) при обмене из 7.7 в 8.х 48

Статья Системный администратор Программист Нет файла v8 1cv8.cf 1cv7.md КД Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Обмен через XML

Кратко суть проблемы можно озвучить цитатой из документации: "Передача параметра из источника в приемник доступна только при обмене между информационными базами на платформе 1С:Предприятие 8". Ниже излагается способ передачи глобальных параметров при таком обмене без правки выгруженного из КД 2 модуля выгрузки и без правки самой КД 2.

27.05.2012    37040    andrewks    18       

Загрузка остатков из 1С6 в 1С8 2

Статья Системный администратор Программист Нет файла v8 БП2.0 БУ Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Внешние источники данных

Часто при организации обмена данными с 1С6 требуется наладить перенос проводок из 1С6 за период. Но тут же возникает вопрос и о переносе начальных остатков. Так вот, если разработан механизм загрузки движений из 1с6 из файла проводок 1sboper.dbf, то можно просто сэмулировать файл 1sboper.dbf, но в нем оставить только проводки с нулевым счетом и загрузить этот файл на дату загрузки остатков. Таким образом не придется делать дополнительный механизм. Единственное - нужно свернуть остатки в 1sboper.dbf. Как это сделать - эта статья.

27.03.2012    14854    fixin    3       

Обмен между 1С 7.7 и 1С 8 через "ЗначениеВСтрокуВнутр" 21

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Универсальные функции

Функция разбора строки, содержащей таблицу значений, полученной из 1С 7.7 методом "ЗначениеВСтрокуВнутр"

11.03.2012    14935    AvalonE2008    7       

Функция загрузки из dbf 98

Статья Программист Нет файла v8 1cv8.cf Бесплатно (free) Файловые протоколы обмена, FTP Универсальные функции

Универсальная функция чтения данных из dbf файлов и создания таблицы значений.

26.12.2011    37221    Kuzja_R    18       

Перенос данных в «1С:Зарплата и Управление Персоналом 8.2» 17

Статья Системный администратор Программист Нет файла v8 ЗУП2.5 1С7:ЗиК Россия Windows Зарплата Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Методика переноса данных из типовой конфигурации «1С:Зарплата и Кадры 7.7» в конфигурацию «1С:Зарплата и Управление Персоналом 8.2» при помощи обработки «Перенос данных из информационных баз 1С Предприятие 7.7».

03.10.2011    16220    Nicholas    7       

Хитрость. Использование БУЛЕВО при OLE обмене/подключении из 7.7 к 8 17

Статья Системный администратор Программист Нет файла v7.7 v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Универсальные функции

Как известно, при OLE обмене доступны только типы СТРОКА, ЧИСЛО, ДАТА. А вот БУЛЕВО (ИСТИНА, ЛОЖЬ) использовать при подключении из 7.7 к 8 не получается. Как же быть? Есть хитрость, как использовать тип булево в семерке при обмене с 1С8! :)

28.09.2011    14003    bsturtle    9       

Перенос информации из ЗиК в ЗУП через файл данных 27

Статья Системный администратор Программист Нет файла v8 ЗУП2.5 1С7:ЗиК Россия Windows Зарплата Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Обмен через XML

Если по каким-либо причинам невозможен перенос данных непосредственно из информационной базы «1С:Зарплата и Кадры 7.7», либо Вы собираетесь использовать нетиповые правила выгрузки данных, то необходимо воспользоваться «Помощником перехода на Зарплата и управление персоналом, редакция 2.5». В данной статье описывается, каким образом можно выгрузить данную обработку из справочника «Конвертация из информационных баз 1С:Предприятия 7.7» конфигурации 1С:Зарплата и управление персоналом.

19.09.2011    28502    Nicholas    16       

Прямой доступ к базе данных 77 из 8ки 16

Статья Системный администратор Программист Нет файла v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Иногда бывает необходимость получить какие-то данные из 77 для того чтобы видеть всю историю работы до перехода на в 8ку. Вот один из моих вариантов получения данных из архивных баз 77. База данных 77 на SQL. P.S. 77-Комплексная

19.04.2011    10548    OldthiefXXX    15       

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

Статья Системный администратор Программист Нет файла v7.7 v8 БП2.0 1С7:ТиС КД Россия БУ Ценообразование, анализ цен Бесплатно (free) Ценообразование, прайсы Перенос данных из 1С7.7 в 1C8.X

Пример выгрузки цен из конфигурации ТиС 9.2 в БП 2.0 Выгружаются все цены на дату, загрузка происходит в документы Установка цен номенклатуры. Документы эти - виртуальные, источника в ТиС не имеют.

03.02.2011    34717    nicxxx    22       

Выполнение параметризированных SQL запросов по OLE из 1С 8.x в 1С 7.7 12

Статья Системный администратор Программист Нет файла v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Практика программирования Перенос данных из 1С7.7 в 1C8.X

Выполнение параметризованных SQL запросов по OLE из 1С 8.x в 1С 7.7 Показан алгоритм как можно выполнить данный вид запросов

08.10.2010    14022    Попытка1С    7       

Загрузка должностей из DBF 5

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 ЗУП2.5 Россия Управление персоналом (HRM) Бесплатно (free) Обработка справочников Файловые протоколы обмена, FTP

Написанная обработка использовалась при переносе данных в 1С 8.1 Зарплата и Управление Персоналом, но она универсальна и подойдет я думаю для любой конфигурации..

23.10.2009    6219    108    netuser    8       

Правила переноса из Бух77 в Бух 8.1 11

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 БП2.0 1С7:Бух Россия БУ Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X Обмен через XML

Правила переноса из Бухгалтерский учет для Украины 77 в Бухгалтерия для Украины 8.1 Были отредактированы правила для документов Приходная накладная, Расходная накладная, ОстаткиТМЦ, СписаниеТМЦ.

03.08.2009    16067    212    pri_hod    7       

Перенос проводок из ЗиК 7.7 в УПП 4

Статья Программист Нет файла v8 1С7:ЗиК УПП1 Россия БУ Зарплата Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Перенос проводок из ЗиК 7.7 в УПП посредством стандарного обмена через XML с минимальной доработкой в УПП.

27.04.2009    8146    Evil Grym    1       

Выгрузка проводок из ЗиК, редакция 2.3 (7.70.283) -> БП 1.6 56

Статья Программист Нет файла v8 1С7:ЗиК БП1.6 Россия Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Ковыряла стандартную выгрузку - вылетали ошибки то там, то там. В итоге - хочу поделиться - может, кому еще пригодится.

10.10.2008    18081    Frosja    17       

Перенос справочников из 7.7 в 8.1 (OLE) 156

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf Windows Бесплатно (free) Обработка справочников Перенос данных из 1С7.7 в 1C8.X

Обработка позволяет перенести простые справочники из семерки в восьмёрку. Реквизиты справочников могут не совпадать.

02.09.2008    23452    2787    deemaa    51       

DBFViewer 115

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Инструментарий разработчика Файловые протоколы обмена, FTP

На новой работе пришлось заниматься экспортом из дремучих DOS-DBF. Пригодилась старая разработка. Может, кому понадобится. Интерфейс, надеюсь, интуитивно-понятный Добавлен облегченный вариант для 8.1

18.02.2007    19115    1191    Abadonna    31       

Генератор отчетов GenRep 31

Инструменты и обработки Программист Приложение (exe) v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Инструментарий разработчика Файловые протоколы обмена, FTP Загрузка и выгрузка в Excel

GenRep - Генератор отчетов в Word, Excel, Нtml, TXT. Шаблон отчета разрабатывается в самом Word'е, Excel. Подробная документация на русском языке и пример для 1С есть внутри архива.

26.07.2006    16146    813    kudenzov    8       

Перенос данных из 1С Предприятие 7.7 в 8.0 95

Инструменты и обработки Системный администратор Программист Внешняя обработка (ert,epf) v8 1cv8.cf 1cv7.md Windows Бесплатно (free) Перенос данных из 1С7.7 в 1C8.X

Универсальная обработка для переноса данных из 1С Предприятие 7.7 в 1С Предприятие 8.0 через OLE.

21.04.2006    11914    1420    Yurij_zp    34