Переключение на Главную Страницу Страницы: [1]  ОтправитьПечать
Очень популярная тема (более 25 ответов) Как из 8.2 сделать прямой запрос к 7.7? (число прочтений - 10643 )
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Как из 8.2 сделать прямой запрос к 7.7?
15. Июня 2011 :: 06:36
Печать  
Для чтения 7.7 из 7.7 использовался 1cpp+VFPOLEDB. А из восьмерки как ?
  
Наверх
 
IP записан
 
Dmitry The Wing
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 839
Местоположение: Где-то в Сибири
Зарегистрирован: 18. Августа 2009
Пол: Мужской
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #1 - 15. Июня 2011 :: 08:09
Печать  
Вариантов много, например "ADODB.Connection", но у себя я всегда обращаюсь из семерки в восьмерку...
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #2 - 15. Июня 2011 :: 08:35
Печать  
А как читать MD. Или каждый раз построчно анализировать DD?
  
Наверх
 
IP записан
 
Maxo
Junior Member
**
Отсутствует


I Love YaBB 2!

Сообщений: 15
Зарегистрирован: 28. Декабря 2006
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #3 - 15. Июня 2011 :: 08:46
Печать  
Есть команда в 1срр : ПрисоединитьМД("Путь до 1cv7.md")
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #4 - 15. Июня 2011 :: 08:53
Печать  
1сpp можно как-то воткнуть в восьмерку?
  
Наверх
 
IP записан
 
Dmitry The Wing
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 839
Местоположение: Где-то в Сибири
Зарегистрирован: 18. Августа 2009
Пол: Мужской
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #5 - 16. Июня 2011 :: 02:10
Печать  
а нафик тебе ДД и МД? типизацию в восьмерке семерочными типами ты все равно никак не получишь, ибо там нет таких ... если нужно обращаться к внутренностям семерки, то подойдет только OLE, но лучше читать только данные...
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #6 - 16. Июня 2011 :: 03:22
Печать  
Я бы делал так:
Создал бы пустую базу 7.7 со спец конфой.
К этой базе коннектишься через ОЛЕ, в ней загружается 1С++, цепляешься к МДшнику нужной базы клюшек, транслируешь запрос в снеговика, выполняешь запрос в снеговике.

Как более продвинутый вариант - не просто спец-конфу, а какие-то параметры вынести в справочники базы. Но абстрактной структуры метаданных я не вижу - разве что, на конкретной задаче что-нить придумается.
А так - в спецконфе только глобальный модуль, который загружает необходимые ДЛЛки в ПриНачалеРаботыСистемы, да имеет парочку экспортных методов (ПрисоединитьМД(), РаспарситьМетаЗапрос(),...).


Еще более брутальный вариант:
создаешь ОЛЕ77 = Новый(ОЛЕ объект 7.7 нужной базы).
Далее, делаешь так:
ОЛЕ77.ЗагрузитьВнешнююКомпоненту("1с++.длл");   //вот тут не 100% уверен. Но должно сработать, кажется.
ОЛЕ77.глРасшифровка = ОЛЕ77.СоздатьОбъект("ОДБЦРекордСет");
ТекстЗапроса = ОЛЕ77.глРасшифровка.ОбрМетаСКЛ(ТекстМетаЗапроса);

Скорее всего, даже не обязательно ссылку на ОДБЦРекордСет хранить через ОЛЕ77.глРасшифровка, достаточно просто
МетаПарсер = ОЛЕ77.СоздатьОбъект("ОДБЦРекордСет");
ТекстЗапроса = МетаПарсер.ОбрМетаСКЛ(ТекстМетаЗапроса);
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #7 - 16. Июня 2011 :: 03:25
Печать  
Ну и, надеюсь, есть понимание того, что объекты базы клюшек тебе в снеговике нафиг не сдались?
Т.е. даже если ты их и развернешь в объекты (а сделать это можно только развернув их в ОЛЕ-объекты, опять же - посредством подключенных через ОЛЕ клюшек) - все-равно ты с ними толком ничего не сможешь сделать.
Так что, проще сразу собирать данные до конкретных полей.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #8 - 16. Июня 2011 :: 04:37
Печать  
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #9 - 16. Июня 2011 :: 08:08
Печать  
Спасибо, то что надо! Если бы еще пару слов насчет стабильности...
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #10 - 16. Июня 2011 :: 08:25
Печать  
? какая стабильность тебя интересует ?
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #11 - 16. Июня 2011 :: 09:02
Печать  
Правда, что ADODB.Connection может оторваться в самый неожиданные момент? http://www.kb.mista.ru/article.php?id=454)

И ОЛЕ, наверное, не вечное.
Или их каждый раз нужно пересоздавать?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #12 - 16. Июня 2011 :: 09:11
Печать  
Врят ли, запросов "на полчаса не имею", поэтому таких проблем не было.
А вот оле страдает 2-х минутным таймаутом..
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #13 - 16. Июня 2011 :: 09:18
Печать  
Таймаут - имеется ввиду, что к нему две минуты не обращаются или то, что обработка в оле длительностью более двух минут тоже приведет к обрыву?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #14 - 16. Июня 2011 :: 10:00
Печать  
оле да, после 2-х минут будет таймаут и всплывёт модальное окошко, что база не отвечает и надо бы нажать на кнопку продолжить или отключится..
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #15 - 16. Июня 2011 :: 10:25
Печать  
Получится, наверное, не очень корректно, когда у пользователя, не имеющего представления о том, что он использует какое-то там ОЛЕ, выскочит непонятное окно и что-то спросит.
Значит при использовании ОЛЕ надо постоянно подключаться, подгружать 1сpp и отключаться... Невесело.
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #16 - 17. Июня 2011 :: 01:56
Печать  
Может, проще создавать ОЛЕ-объект по мере необходимости, и разрушать его, как только необходимость закончилась?
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #17 - 17. Июня 2011 :: 04:54
Печать  
Лунтик писал(а) 16. Июня 2011 :: 10:25:
Получится, наверное, не очень корректно, когда у пользователя, не имеющего представления о том, что он использует какое-то там ОЛЕ, выскочит непонятное окно и что-то спросит.
Значит при использовании ОЛЕ надо постоянно подключаться, подгружать 1сpp и отключаться... Невесело.


Какое отношение оле имеет к 1сpp  у вас ? Что за каша ?
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #18 - 17. Июня 2011 :: 07:34
Печать  
ОЛЕ мне нужен только для того, чтобы полноценно работать с DBF (например, видеть перечисления, которые из DD не увидишь).
Идея ОЛЕ мне кажется слишком громоздкой, лучше бы, конечно прямой доступ (пока реальным считаю только ADODB, но там тоже надо знать структуру полей). Как прочиать MD без OLE?
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #19 - 17. Июня 2011 :: 07:42
Печать  
Лунтик писал(а) 17. Июня 2011 :: 07:34:
Как прочиать MD без OLE?


Можно сделать на vbs+DWX, в результате получишь длинную строку, которую нужно разобрать на секции - в принципе это не сложно.

  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #20 - 17. Июня 2011 :: 08:07
Печать  
Я имею ввиду ОЛЕ к специальной базе, в которой есть справочник путей к базам 77, которые будут консолидироваться (до 10 штук). В этой же ОЛЕ будет загружена 1cpp и создан объект MetaDataWork, который даст возможность походить поочередно по вон тем базам (чтобы не создавать ОЛЕ к каждой базе, потому что "скорость ОЛЕ оставляет желать лучшего").
Может можно будет создать ссылку на MetаDataWork в восьмерке (через ОЛЕ к специальной базе), убить ОЛЕ и пользоваться ссылкой?
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #21 - 17. Июня 2011 :: 08:19
Печать  
Лунтик писал(а) 17. Июня 2011 :: 08:07:
Я имею ввиду ОЛЕ к специальной базе, в которой есть справочник путей к базам 77, которые будут консолидироваться (до 10 штук). В этой же ОЛЕ будет загружена 1cpp и создан объект MetaDataWork, который даст возможность походить поочередно по вон тем базам (чтобы не создавать ОЛЕ к каждой базе, потому что "скорость ОЛЕ оставляет желать лучшего").
Может можно будет создать ссылку на MetаDataWork в восьмерке (через ОЛЕ к специальной базе), убить ОЛЕ и пользоваться ссылкой?


Объект жив, пока существуют внешние ссылки на него (что, кстати, не говорит о том, что объект умрет, когда не станет внешних ссылок на него).
Т.е. если ты сделаешь
Клюшки = Новый(ОЛЕ-объект 7.7);
РадугаСервис = Клюшки.СоздатьОбъект("МетаДатаВорк");
Клюшки = "";
то пока у тебя есть ссылка на РадугаСервис - объект Клюшки тоже будет жить. Ты, может, не будешь иметь ссылки на него - но сам он никуда нафиг не денется, будет жить.

Ну и на счет скорости ОЛЕ: одно дело выборку гонять через ОЛЕ - тут да, скорость ОЛЕ явно в пролете. А перекинуть распарсенный текст запроса - не такая уж нагрузка.
  
Наверх
 
IP записан
 
Satans Claws
God Member
*****
Отсутствует


1C++ rocks!

Сообщений: 721
Зарегистрирован: 29. Ноября 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #22 - 17. Июня 2011 :: 08:31
Печать  
Лунтик писал(а) 17. Июня 2011 :: 07:34:
ОЛЕ мне нужен только для того, чтобы полноценно работать с DBF (например, видеть перечисления, которые из DD не увидишь).
Идея ОЛЕ мне кажется слишком громоздкой, лучше бы, конечно прямой доступ (пока реальным считаю только ADODB, но там тоже надо знать структуру полей). Как прочиать MD без OLE?


Как вариант - иметь некоторые файлы декомпиляции МДшника (правда, нужен будет регламент, который бы поддерживал актуальность этих файлов).
На вскидку - ОбъектыМетаданных.txt, Перечисления.mdp достаточно в довесок к DD/DDS
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #23 - 17. Июня 2011 :: 08:48
Печать  
все уже украдено до вас Улыбка
http://www.1cpp.ru/forum/YaBB.pl?num=1171432959/9#9
  

1&&2&&3
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #24 - 17. Июня 2011 :: 08:51
Печать  
+ один из последних вариантов того модуля

Код
Выбрать все
Функция ЧГ0(ЗначениеЧисло)
	Возврат Формат(ЗначениеЧисло,"ЧГ=0");
КонецФункции

Функция ЗагрузитьМетаданные(КаталогИБ, ИмяПользователяV7, ПарольПользователяV7, ИдентификаторХранилищаМетаданных) Экспорт
	МД = Новый Структура;

	Состояние("Подключение к " + КаталогИБ);

	V7 = Новый COMОбъект("V77.Application");
	Если V7.Initialize(V7.RMTrade, "/d"""+КаталогИБ+""" /n"+ИмяПользователяV7+" /p"+ПарольПользователяV7, "NO_SPASH_SHOW") = 0 Тогда
		Сообщить("Нет доступа к информационной базе.");
		Возврат Ложь;
	КонецЕсли;

	MDW = V7.CreateObject("MetaDataWork");

	MD = V7.Метаданные;

	Состояние("Загрузка справочников..");
	Ст1 = Новый Структура;
	МД.Вставить("Справочник", Ст1);
	Для Номер1 = 1 По MD.Справочник() Цикл
		МДСправочник = MD.Справочник(Номер1);
		Ст2 = Новый Структура;
		Ст1.Вставить(МДСправочник.Идентификатор, Ст2);
		Ст2.Вставить("ИД", ЧГ0(MDW.ИДОбъекта(МДСправочник)));
		Ст2.Вставить("ИД36", Прав(V7.EvalExpr("_idtostr("+ЧГ0(MDW.ИДОбъекта(МДСправочник))+")"),4));
		Для Номер2 = 1 По МДСправочник.Реквизит() Цикл
			МДРеквизит = МДСправочник.Реквизит(Номер2);
			Ст2.Вставить(МДРеквизит.Идентификатор, ЧГ0(MDW.ИДОбъекта(МДРеквизит)));
		КонецЦикла;
	КонецЦикла;

	Состояние("Загрузка перечислений..");
	Ст1 = Новый Структура;
	МД.Вставить("Перечисление", Ст1);
	Для Номер1 = 1 По MD.Перечисление() Цикл
		МДПеречисление = MD.Перечисление(Номер1);
		Ст2 = Новый Структура;
		Ст1.Вставить(МДПеречисление.Идентификатор, Ст2);
		Ст2.Вставить("ИД", ЧГ0(MDW.ИДОбъекта(МДПеречисление)));
		Для Номер2 = 1 По МДПеречисление.Значение() Цикл
			МДЗначение = МДПеречисление.Значение(Номер2);
			Ст2.Вставить(МДЗначение.Идентификатор, V7.EvalExpr("_idtostr("+ЧГ0(MDW.ИДОбъекта(МДЗначение))+")")+"   ");
		КонецЦикла;
	КонецЦикла;

	Состояние("Загрузка граф отбора..");
	Ст1 = Новый Структура;
	МД.Вставить("ГрафаОтбора", Ст1);
	Для Номер1 = 1 По MD.ГрафаОтбора() Цикл
		МДГрафаОтбора = MD.ГрафаОтбора(Номер1);
		Ст2 = Новый Структура;
		Ст1.Вставить(МДГрафаОтбора.Идентификатор, Ст2);
		Ст2.Вставить("ИД", ЧГ0(MDW.ИДОбъекта(МДГрафаОтбора)));
	КонецЦикла;

	Состояние("Загрузка документов..");
	Ст1 = Новый Структура;
	МД.Вставить("Документ", Ст1);
	Для Номер1 = 1 По MD.Документ() Цикл
		МДДокумент = MD.Документ(Номер1);
		Ст2 = Новый Структура;
		Ст1.Вставить(МДДокумент.Идентификатор, Ст2);
		Ст2.Вставить("ИД", ЧГ0(MDW.ИДОбъекта(МДДокумент)));
		Для Номер2 = 1 По МДДокумент.РеквизитШапки() Цикл
			МДРеквизит = МДДокумент.РеквизитШапки(Номер2);
			Ст2.Вставить(МДРеквизит.Идентификатор, ЧГ0(MDW.ИДОбъекта(МДРеквизит)));
		КонецЦикла;
		Для Номер2 = 1 По МДДокумент.РеквизитТабличнойЧасти() Цикл
			МДРеквизит = МДДокумент.РеквизитТабличнойЧасти(Номер2);
			Ст2.Вставить(МДРеквизит.Идентификатор, ЧГ0(MDW.ИДОбъекта(МДРеквизит)));
		КонецЦикла;
	КонецЦикла;

	Состояние("Загрузка регистров..");
	Ст1 = Новый Структура;
	МД.Вставить("Регистр", Ст1);
	Для Номер1 = 1 По MD.Регистр() Цикл
		МДРегистр = MD.Регистр(Номер1);
		Ст2 = Новый Структура;
		Ст1.Вставить(МДРегистр.Идентификатор, Ст2);
		Ст2.Вставить("ИД", ЧГ0(MDW.ИДОбъекта(МДРегистр)));
		Для Номер2 = 1 По МДРегистр.Измерение() Цикл
			МДИзмерение = МДРегистр.Измерение(Номер2);
			Ст2.Вставить(МДИзмерение.Идентификатор, ЧГ0(MDW.ИДОбъекта(МДИзмерение)))
		КонецЦикла;
		Для Номер2 = 1 По МДРегистр.Ресурс() Цикл
			МДРесурс = МДРегистр.Ресурс(Номер2);
			Ст2.Вставить(МДРесурс.Идентификатор, ЧГ0(MDW.ИДОбъекта(МДРесурс)))
		КонецЦикла;
		Для Номер2 = 1 По МДРегистр.Реквизит() Цикл
			МДРеквизит = МДРегистр.Реквизит(Номер2);
			Ст2.Вставить(МДРеквизит.Идентификатор, ЧГ0(MDW.ИДОбъекта(МДРеквизит)))
		КонецЦикла;
	КонецЦикла;

	СсылкаДопИнфо = Справочники.СохраненныеНастройки.НайтиПоРеквизиту("НастраиваемыйОбъект", ИдентификаторХранилищаМетаданных);
	Если СсылкаДопИнфо.Пустая() Тогда
		ОбъектДопИнфо = Справочники.СохраненныеНастройки.СоздатьЭлемент();
		ОбъектДопИнфо.НастраиваемыйОбъект = ИдентификаторХранилищаМетаданных;
		ОбъектДопИнфо.Наименование = ОбъектДопИнфо.НастраиваемыйОбъект;
		ОбъектДопИнфо.ТипНастройки = Перечисления.ТипыНастроек.ПроизвольныеНастройки;
	Иначе
		ОбъектДопИнфо = СсылкаДопИнфо.ПолучитьОбъект();
	КонецЕсли;
	ОбъектДопИнфо.ХранилищеНастроек = Новый ХранилищеЗначения(МД);
	ОбъектДопИнфо.Записать();

	Возврат Истина;
КонецФункции

Функция ПолучитьСтрокой(ЗначениеСтроки) Экспорт
	Если ПустаяСтрока(ЗначениеСтроки) Тогда
		Возврат "";
	ИначеЕсли ЗначениеСтроки = Null Тогда
		Возврат "";
	Иначе
		Возврат СокрП(ЗначениеСтроки);
	КонецЕсли;
КонецФункции

Функция ПолучитьДатой(ЗначениеДаты) Экспорт
	Если ЗначениеДаты = '17530101000000' Тогда
		Возврат '00010101000000';
	ИначеЕсли ЗначениеДаты = Null Тогда
		Возврат '00010101000000';
	Иначе
		Возврат ЗначениеДаты;
	КонецЕсли;
КонецФункции

Функция РасшифроватьДатуВремя(ДатаВремяИД) Экспорт
	ДатаВремя = Дата(Число(Лев(ДатаВремяИД, 4)), Число(Сред(ДатаВремяИД, 5, 2)), Число(Сред(ДатаВремяИД, 7, 2)));

	Вес = 1;
	Секунд=0;
	Для Ном = 0 по 5 Цикл
		Код = КодСимвола(ДатаВремяИД, 14 - Ном);
		Если Код < 65 Тогда
			Код = Код - 48;
		Иначе
			Код = Код - 55;
		КонецЕсли;
		Секунд = Секунд + Код * Вес;
		Вес = Вес * 36;
	КонецЦикла;
	ДатаВремя = ДатаВремя + Секунд / 10000;
	Возврат ДатаВремя;
КонецФункции
 

  

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


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #25 - 17. Июня 2011 :: 09:55
Печать  
Бог ты мой, 2007 год... Вы все мои грабли поперешагивали еще в доисторические времен. Судя по почерку, задачи были грандиозные. Что же можно было делать в восьмерке 5 лет назад, она же была полумертвой..


Вы предлагаете хранить не ссылку на ОЛЕ, а Структруры, да? Т.е. структура и есть как-бы результат декомпиляции. Красиво.
А если хранить 10 штук немаленьких структур, то нигде ничего не лопнет?
« Последняя редакция: 17. Июня 2011 :: 12:24 - Лунтик »  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #26 - 17. Июня 2011 :: 12:31
Печать  
Лунтик писал(а) 17. Июня 2011 :: 09:55:
Вы предлагаете хранить не ссылку на ОЛЕ, а Структруры, да?

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

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



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #27 - 20. Июня 2011 :: 11:43
Печать  
Для почитателей DWX Улыбка
Стало интересно напрямую (без ОЛЕ) прочитать метаданные 7-ки.
В примере выдается список доков с ID-ми.
  

md_read_001.zip ( 5 KB | Загрузки )
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #28 - 23. Июня 2011 :: 06:14
Печать  
Лунтик писал(а) 23. Июня 2011 :: 06:03:
Что такое DWX?


http://forum.script-coding.com/viewtopic.php?id=2214

и класс, на её основе от chessman
  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #29 - 23. Июня 2011 :: 06:22
Печать  
Eprst писал(а) 23. Июня 2011 :: 06:14:
Лунтик писал(а) 23. Июня 2011 :: 06:03:
Что такое DWX?


http://forum.script-coding.com/viewtopic.php?id=2214

и класс, на её основе от chessman


Уже не актуально, отдельный класс не нужен, собрал все в DLL Улыбка

http://forum.script-coding.com/viewtopic.php?pid=48547#p48547

  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #30 - 23. Июня 2011 :: 06:27
Печать  
Да. Спасибо.
  
Наверх
 
IP записан
 
Eprst
God Member
*****
Отсутствует



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #31 - 23. Июня 2011 :: 07:17
Печать  
chessman писал(а) 23. Июня 2011 :: 06:22:
Уже не актуально, отдельный класс не нужен, собрал все в DLL Улыбка

http://forum.script-coding.com/viewtopic.php?pid=48547#p48547



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

  
Наверх
 
IP записан
 
chessman
God Member
*****
Отсутствует



Сообщений: 1084
Зарегистрирован: 10. Августа 2007
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #32 - 23. Июня 2011 :: 07:48
Печать  
Добавил инфу в репозиторий. Улыбка
  
Наверх
 
IP записан
 
Лунтик
Junior Member
**
Отсутствует


1C++ rocks!

Сообщений: 58
Зарегистрирован: 11. Июля 2010
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #33 - 23. Июня 2011 :: 09:18
Печать  
Что такое репозитарий?
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3051
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #34 - 23. Июня 2011 :: 09:45
Печать  
Лунтик писал(а) 23. Июня 2011 :: 09:18:
Что такое репозитарий?

http://www.1cpp.ru/forum/YaBB.pl?board=repo
  

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


I Love YaBB 2!

Сообщений: 56
Зарегистрирован: 01. Сентября 2006
Пол: Мужской
Re: Как из 8.2 сделать прямой запрос к 7.7?
Ответ #35 - 30. Июня 2011 :: 12:08
Печать  
А еще можно 8-ки обращаться к 7.7 через Web-сервис.
  
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 
ОтправитьПечать