Проблема при переносе справочника

  • Автор темы -
  • Дата начала

Гость
#1
При помощи ОЛЕ тащю справочник контрагены, из 7.7 в 8.1, всё нормально. Дошло дело до расчётных счетов контрагентов. В 7.7 они идут отдельным справочником "Расчётные счета". Пытаюсь сделать ссылку на него, данные не переносятся. Может это связано с тем, что справчник в семёрке подченённый? т.е. механизм работает на справочнике контрагенты, а на расчётных счетах нет. Доступ к базе есть, а данные не цепляет. В чём дело, подскажите пожалуйста.

код:

ОЛЕ = ПолучитьОЛЕБазу();
РасчетныеСчета77 = ОЛЕ77.CreateObject("Справочник.РасчетныеСчета");
РасчетныеСчета77.ВыбратьЭлементы();
Пока РасчетныеСчета77.ПолучитьЭлемент() = 1 Цикл
Сообщить(РасчетныеСчета77.реквизит);
КонецЦикла;


Ничего не пишет...
 

vbs

Well-Known Member
18.02.2007
1 708
3
Санкт-Петербург
#3
Если "РасчетныеСчета" подчиненный справочник, надо перебрать элементы справочника-владельца и для каждого выбрать элементы
справочника "РасчетныеСчета"
 

unknown181538

НеГуру
28.12.2008
1 417
0
30
Москва
#4
Если "РасчетныеСчета" подчиненный справочник, надо перебрать элементы справочника-владельца и для каждого выбрать элементы
справочника "РасчетныеСчета"
А почему так? Ведь не в ОЛЕ соединении можно перебрать просто все.
Можно еще попробовать написать "ВыбратьЭлементы(1)".
 

vbs

Well-Known Member
18.02.2007
1 708
3
Санкт-Петербург
#5
ВыбратьЭлементы(<?>)
SelectItems(<?>)
Синтаксис:
ВыбратьЭлементы(<Режим>)
Назначение:
Открыть выборку элементов справочника.
Возвращает: 1 - если действие выполнено и в выборке есть хотя бы один элемент;
0 - если действие не выполнено или в выборке нет ни одного элемента.
Для подчиненного справочника
РасчетныеСчета77.ВыбратьЭлементы();
возвратит 0. Проверьте
 

Гость
#6
Спасибо! Получилось, после задания владельца. Вот только наименование банка и к/с не вытаскиваются, т.к. идёт ссылка на справочник БАНКИ. Пишет COMобъект.
 

vbs

Well-Known Member
18.02.2007
1 708
3
Санкт-Петербург
#7
Я что-то не очень понял, ты что в интерактивном режиме поэлементно переносишь справочники ?
Не проще ли обработочку написать по переносу ?
 

Гость
#8
Я что-то не очень понял, ты что в интерактивном режиме поэлементно переносишь справочники ?
Не проще ли обработочку написать по переносу ?

Ага. Мне только контрагентов надо. Вот осталось банки перетащить и всё. Как сделать, подскажи, пожалуйста?
 

vbs

Well-Known Member
18.02.2007
1 708
3
Санкт-Петербург
#11
Тогда горе. Придется банки в расчетных счетах переносить по БИКу (не знаю, как в 8ке, в 7.7 БИК - это код банка)
Если счетов много, не ленись, напиши обработку переноса.
Хороший программист обладает, по крайней мере, одним неоценимым качеством, именуемым "лень".
Если мне надо перенести 2 элемента, я заморачиваться не стану, если 10 - чуть подумаю, а вот больше - это уже влом руками таскать - написал программку - и спи спокойно :)
Я первый перенос когда-то написал, когда мне сказали, что в бухгалтерии дублировали накладную из ТиС НЕДЕЛЮ. Правда, накладная там была с большой буквы - 3800 позиций, больше я никогда не видел.
 

Гость
#12
В 8-ке в справочнике банков такой же БИК.

В 7-ке
Перенёс справочник контрагенты.
Я вытащил из справочника "Расчётные счета" счета контрагентов. А вот банки, соответственно каждому расчётному счёту клиента, вытянуть не могу, т.к. в форме идёт ссылка Справочники.Банки. Там есть БИКи, если их вытянуть, то можно будет в 8-ке уже присваивать банки контрагентам.
 

vbs

Well-Known Member
18.02.2007
1 708
3
Санкт-Петербург
#15
Я с 8кой не работал, но вот в 7ке из любой конфигурации выгрузил бы справочник "РасчетныеСчета" в таблицу (Владелец, реквизиты справочника, в которых есть БИК банка),
а при загрузке в другую конфигурацию делаю так - по БИКу ищу элемент справочника "Банки" и цепляю его как ссылку в справочник "РасчетныеСчета"