Переключение на Главную Страницу Страницы: 1 ОтправитьПечать
Обычная тема Как получить ID счета в присоединенной базе? (число прочтений - 2808 )
val
Full Member
***
Отсутствует


Дорогу осиливает идущий

Сообщений: 137
Зарегистрирован: 07. Июля 2006
Как получить ID счета в присоединенной базе?
05. Сентября 2006 :: 14:47
Печать  
Есть код:
     СчетТорговли=СчетПоКоду("УЧ.2");
     мДата=СоздатьОбъект("MetaDataWork");
     мДата.ПрисоединитьМД(Путь+"1Cv7.MD");
     Database=СоздатьОбъект("ODBCDatabase");
     Database.ПрисоединитьИБ(Путь);
     глRecordSet=СоздатьОбъект("ODBCRecordSet");
     глRecordSet.УстБД(Database);
     говли));
Использую 1С++ 2.0.3.1
В своей базе все работает. В присоединенной нет. Проблема в ID СчетТорговли.
Как его получить в присоединенной базе?
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как получить ID счета в присоединенной базе?
Ответ #1 - 06. Сентября 2006 :: 05:28
Печать  
1. В документации сказано что ПрисоединитьМД позволяет работать с идентификаторами метаданных, а не данных.
2. Вообще агрегатные объекты такие как Счет не переносимы между ИБ. Т.е. мы не можем устанавливать параметры и получать результаты агрегатных типов (Справочник, Документ, Счет...)
3. Поскольку можно работать только с простыми типами, то твою задачу можно решить двумя способами:
а) установить в качестве параметра сам код счета - "УЧ.2", а в запросе выполнять отбор через связь с планом счетов
б) дополнительным запросом сначала получить идентификатор счета по коду из другой ИБ и установить в качестве параметра уже непосредственно этот идентификатор.

ps
если что-то не понятно, готов пояснить
  

1&&2&&3
Наверх
 
IP записан
 
val
Full Member
***
Отсутствует


Дорогу осиливает идущий

Сообщений: 137
Зарегистрирован: 07. Июля 2006
Re: Как получить ID счета в присоединенной базе?
Ответ #2 - 06. Сентября 2006 :: 07:44
Печать  
(1) Уже сделал по 3 а).
По 3 б) попробую, возможно. скорость на больших базах будет выше.

Спасибо.
  
Наверх
 
IP записан
 
val
Full Member
***
Отсутствует


Дорогу осиливает идущий

Сообщений: 137
Зарегистрирован: 07. Июля 2006
Re: Как получить ID счета в присоединенной базе?
Ответ #3 - 08. Сентября 2006 :: 09:01
Печать  
(1) Сделал по 3 б). Делал выборку по остаткам и проводкам в базе рамером 15Гб.
3 б) заметно быстрее, чем 3 а).
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: 1
ОтправитьПечать