|
Com соединение с 7.7 | ☑ | ||
---|---|---|---|---|
0
Dmitry_333
30.01.19
✎
16:43
|
Господа, в продолжении темы Штатный перенос из 77 в 8.3.
Т.к. штатными средствами не вышло, решил самостоятельно внешней обработкой вытащить нужное, тем более что перенести нужно только контрагентов. Поскреб по форумам и накидал пока вот так: v7 = Новый COMObject("v77.Application"); Открыта = v7.Initialize(v7.RMTrade, "/D""" + "D:\база с старого ноутбука\база\ATC\" + """ /M ", "NO_SPLASH_SHOW"); КонтрагентСОМ = v7.CreateObject("Справочник.Контрагенты"); КонтрагентСОМ.ВыбратьЭлементы(); Пока КонтрагентСОМ.ПолучитьЭлемент() = 1 Цикл ВыбКонтр = КонтрагентСОМ.ТекущийЭлемент(); КонецЦикла; Застопорился на том, что через отладчик не вижу в переменных ничего, кроме значения "COMОбъект", т.е. дерева не вижу. Не понимаю, то ли где ошибка, то ли особенность соединения с 7-ой. |
|||
1
Dmitry_333
30.01.19
✎
16:47
|
Сорян, разобрался
|
|||
2
abfm
30.01.19
✎
16:49
|
С этим придется мириться. В 7 есть только OLE. Но доступ к к данным по реквизитам доступен, правда ответ будет в примитивном виде строка число.
|
|||
3
Dmitry_333
30.01.19
✎
16:52
|
(2) Ага,спасибо.
|
|||
4
Dmitry_333
30.01.19
✎
16:54
|
Не понятно пока, правда, как до инн с кпп добраться
|
|||
5
abfm
30.01.19
✎
16:56
|
Создать объект найти по коду, наименованию. Считать ИНН.
|
|||
6
Ёпрст
30.01.19
✎
16:58
|
(4)
Пока КонтрагентСОМ.ПолучитьЭлемент() = 1 Цикл Сообщить(КонтрагентСОМ.ЮрФизЛицо.ИНН); КонецЦикла; |
|||
7
Dmitry_333
30.01.19
✎
17:00
|
(5) (6) Спасибо.
|
|||
8
Garykom
гуру
30.01.19
✎
17:01
|
(0) Может все же освоишь КД2 ?
"Лучше день потерять зато потом за 5 минут долететь"© Учитывая что день терешь один (или сколько потребуется на освоение КД) а быстро летать в будущем пригодится. В отличие от этих костылей с OLE/COM. |
|||
9
Garykom
гуру
30.01.19
✎
17:01
|
(8) *теряешь
|
|||
10
Калиостро
30.01.19
✎
17:03
|
(4) я делал так:
Процедура ПрочитатьИНН(ИННКПП, ИНН, КПП) Экспорт СтрДл = СтрДлина(ИННКПП); ИНН = ""; КПП = ""; НомРазд = 0; Для к=1 по СтрДл Цикл ТекСимв = Сред(ИННКПП, к, 1); Если Найти("1234567890", ТекСимв) = 0 Тогда НомРазд = к; Прервать; КонецЕсли; ИНН = ИНН + ТекСимв; КонецЦикла; Если НомРазд = 0 Тогда Возврат; КонецЕсли; Для к = (НомРазд + 1) по СтрДл Цикл ТекСимв = Сред(ИННКПП, к, 1); Если Найти("1234567890", ТекСимв) = 0 Тогда НомРазд = к; Прервать; КонецЕсли; КПП = КПП + ТекСимв; КонецЦикла; КонецПроцедуры //ПрочитатьИНН Процедура КомандаЗагрузить(Команда) СпрКонтрагенты77 = База77.CreateObject("Справочник.Контрагенты"); СпрКонтрагенты77.ВыбратьЭлементы(); Пока СпрКонтрагенты77.ПолучитьЭлемент() = 1 Цикл Если СпрКонтрагенты77.ПометкаУдаления() = 1 Тогда Продолжить; КонецЕсли; Если СпрКонтрагенты77.ЭтоГруппа() = 1 Тогда Продолжить; КонецЕсли; Наименование= СокрЛП(СпрКонтрагенты77.Наименование); ИННКПП = СокрЛП(СпрКонтрагенты77.ИНН); ИНН = ""; КПП = ""; ПрочитатьИНН(ИННКПП, ИНН, КПП); КонецЦикла; КонецПроцедуры |
|||
11
VladZ
30.01.19
✎
17:03
|
Не теряй время на бодание с COM. Убогая вещь...
Лучше это время используй для изучения КД. |
|||
12
VladZ
30.01.19
✎
17:03
|
Что в итоге тебе нужно?
|
|||
13
Dmitry_333
30.01.19
✎
17:08
|
(12) в данный момент перегрузить контрагентов. (10) Благодарю
|
|||
14
VladZ
30.01.19
✎
17:10
|
(13) Что является источником и что приемником?
|
|||
15
Dmitry_333
30.01.19
✎
17:13
|
источник - 77, приемник 8.3
|
|||
16
VladZ
30.01.19
✎
17:14
|
(15) Ты назвал платформу. Платформа не содержит никаких данных. Конфигурации какие?
|
|||
17
Dmitry_333
30.01.19
✎
17:17
|
7.7 - "Комплексная конфигурация", 8.3 - БП
|
|||
18
Dmitry_333
30.01.19
✎
17:18
|
штатной обработкой не вышло, как я писал выше
|
|||
19
VladZ
30.01.19
✎
17:19
|
(18) Что не вышло в штатной?
|
|||
20
Dmitry_333
30.01.19
✎
17:23
|
Для конфы конвертация не поддерживается
|
|||
21
VladZ
30.01.19
✎
17:25
|
Возьми http://softproc.ru/public/354468/
за основу, до актуальной БП допили напильником. |
|||
22
Dmitry_333
30.01.19
✎
17:32
|
Спасибо. Но почти допилил уже эту. Мне один раз перенести и забыть о 7.7. Надеюсь-)
|
|||
23
VladZ
30.01.19
✎
17:36
|
Если не хочешь ковыряться в 7.7 возьми refprint.ert.
Закинь нужную тебе инфу в Эксель и на стороне восьмерки загружай. |
Форум | Правила | Описание | Объявления | Секции | Поиск | Книга знаний | Вики-миста |