|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
здравствуйте! читал форум на тему сабжа, выяснил, что почти все данные 1С хранит в MSSQL в бинарном формате наверняка вопрос не нов, но не нашел на форуме ответа задача: как конвертнуть бинарные данные в читабельный вид? конвертить предполагается либо средствами MSSQL, либо PHP что подскажите на этот счет? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 12:15 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooNчитал форум на тему сабжа, выяснил, что почти все данные 1С хранит в MSSQL в бинарном формате 99% данных хранятся в примитивных форматах ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 12:20 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
В бинарном формате хранятся ссылки, да поля типа "хранилище значений". Ссылки конвертировать, да и вообще как-то интерпретировать ни к чему - любая ссылка ведет к первоисточнику, где в текстовом виде есть наименование, код объекта,другие реквизиты, где даты - в формате дата, а числа - в числовом формате. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 12:24 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
pailВ бинарном формате хранятся ссылки, да поля типа "хранилище значений". Ссылки конвертировать, да и вообще как-то интерпретировать ни к чему - любая ссылка ведет к первоисточнику, где в текстовом виде есть наименование, код объекта,другие реквизиты, где даты - в формате дата, а числа - в числовом формате. т.е. обычный текст с формы будет лежать как varchar? а если будет лежать код справочника с формы, то в каком формате будет он? ну а те же самые ссылки расшифровать и дойти до источника, или нет смысла? к примеру мне надо данные по "документу" вытащить, как поступить в такой ситуации? может есть СОМ объекты для этого? и еще вопрос: данные просто лежат в обычном бинарном виде или они зашифрованы как-то? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 12:40 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooNт.е. обычный текст с формы будет лежать как varchar? может есть СОМ объекты для этого? и еще вопрос: данные просто лежат в обычном бинарном виде или они зашифрованы как-то? да есть бинарные зашифрованы P.S. без указания ветки 1С 7.7 или 8.Х топик бессмысленный ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 12:59 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooNк примеру мне надо данные по "документу" вытащить, как поступить в такой ситуации? может есть СОМ объекты для этого? и еще вопрос: данные просто лежат в обычном бинарном виде или они зашифрованы как-то? ссылки - это обычные GUIDы. Просто код, присвоенный объекту в момент создания. "расшифровка" - данные этого объекта в его таблице. COM-объект есть, это - V82.ComConnector, далее - по описанию языка. Это лучше, чем пробираться самостоятельно да с нуля по структуре базы. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 13:03 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
Shuhardда есть бинарные зашифрованы P.S. без указания ветки 1С 7.7 или 8.Х топик бессмысленный 1С версии 8.2 pailссылки - это обычные GUIDы. Просто код, присвоенный объекту в момент создания. "расшифровка" - данные этого объекта в его таблице. COM-объект есть, это - V82.ComConnector, далее - по описанию языка. Это лучше, чем пробираться самостоятельно да с нуля по структуре базы. т.е. нет смысла расшифровывать GUIDы и далее искать их, а проще воспользоваться V82.ComConnector, он и прочитает и расшифрует. я верно понимаю? ткните в описание сего объекта, плиз P.S. С1 никогда не сталкивался, поэтому надеюсь на понимание, однополчане :-) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 13:17 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ShuhardZooNт.е. обычный текст с формы будет лежать как varchar? может есть СОМ объекты для этого? и еще вопрос: данные просто лежат в обычном бинарном виде или они зашифрованы как-то? да пошарился по БД и вся инфа там в бинарях, не нашел varchar и близко, даты и суммы в соответствующих типах, остальное в бинарном ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 13:19 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
to all на ежедневной основе мне надо тянуть инфу с 1С-ки по проведенным документам и кое-каким справочникам как я понял из инфы по V82.ComConnector, то он работает непосредственно через 1С-ку, может стоит просто работать с самой базой (MSSQL) или это действительно настолько геморно? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 13:23 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooN, информация для размышления: название таблиц в БД гененрируется платформой 1С автоматически. Есть вероятность (и достаточно высокая), что после внесения очередных изменений в конфигурацию 1С таблицы в БД будут уже с другими именами. На мой взгляд более надежные способы интеграции: 1) Через COM - подключение (надо писать скрипт на языке 1С) 2) Через WEB - сервис 3) Просто через файл (XML, например) 4) Через промежуточную БД/таблицу (1С туда пишет - вы забираете) ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 13:52 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
DmitriyZЕсть вероятность (и достаточно высокая), что после внесения очередных изменений в конфигурацию 1С таблицы в БД будут уже с другими именами имеется в виду накат очередного патча? DmitriyZ1) Через COM - подключение (надо писать скрипт на языке 1С) 2) Через WEB - сервис 3) Просто через файл (XML, например) 4) Через промежуточную БД/таблицу (1С туда пишет - вы забираете) - разве скрипт будет не на языке среды вызова СОМа, но с элементами 1С-ки? - можно подробнее об этом? - думал на счет последних двух пунктов, но не хотелось лезть в 1С-ку. да и после изменений, описанных выше, не слетит ли такой способ экспорта? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 14:46 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooN, 1) Ну, можно это и "патчем" назвать, раз так понятнее. 2) Да, все так. 3) Подробнее именно про WEB сервис http://v8.1c.ru/overview/Term_000000273.htm#1 вообще про интеграцию http://v8.1c.ru/overview/Term_000000581.htm 4) Вам в любом случае придется если не "лезть", то плотно взаимодействовать с теми, кто "полезет" в конфигурацию 1С. Нет, не слетит. При таком способе интеграции вы будете оперировать не физ. таблицами, а объектами самой 1С. ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 15:05 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooN разве скрипт будет не на языке среды вызова СОМа, но с элементами 1С-ки? вызов из аксесса: Dim cntr As Object Dim trade As Object Dim Запрос As Object Set cntr = CreateObject("V8.COMConnector") Set trade = cntr.Connect("File=""C:\Documents and Settings\excadmin\Мои документы\Zero""; Usr=""excadmin"";") Set Запрос = trade.NewObject("Запрос") Запрос.Текст = "ВЫБРАТЬ * Из РегистрНакопления.ОстаткиНаСкладе.Остатки(&ДатаОтчета, ) КАК ОстаткиНаСкладеОстатки" Запрос.УстановитьПараметр "ДатаОтчета", DateAdd("m", -1, Date) Set Результат = Запрос.Выполнить().Выбрать() Do While Результат.Следующий() Debug.Print Результат.Номенклатура.Наименование; Результат.КоличествоОстаток Loop Запрос.УстановитьПараметр "ДатаОтчета", #12/5/2006# Set Результат = Запрос.Выполнить().Выбрать() Do While Результат.Следующий() Debug.Print Результат.Номенклатура.Наименование; Результат.КоличествоОстаток Loop Set Frontir = trade.NewObject("Граница", #12/5/2006#) Запрос.УстановитьПараметр "ДатаОтчета", Frontir End Sub ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 15:08 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
to all спасибо други! примерную картину имею, думаю из PHP заюзать COM и через него цепляться к 1С-ке, есть отдельно дистр для установки V82.ComConnector без установки самой 1С, т.к. мой PHP планируется крутить на другой машине посоветуйте книженцию/сайт/и т.п. для получения минимальной для моей задачи информации без всевозможных дебрей P.S. что скажете по поводу выбранного мною способа? какие есть минусы его, что бы Вы выбрали для подобной ситуации? ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 19:47 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
to all и еще вопрос: будет ли работать 1С-ка просто установленная с диска на машину, мне надо лишь для проверки функционала? или нужно ее конфигурить, нужен хасп и т.п. посоветуйте как лучше поступить для теста взаимодействия и экспорта из нее данных ... |
|||
:
Нравится:
Не нравится:
|
|||
06.02.2012, 19:49 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooNto all на ежедневной основе мне надо тянуть инфу с 1С-ки по проведенным документам и кое-каким справочникам проще всего средствами 1С выгружать в xml, а далее делай с ним, что хочешь. Напрямую с базой работать устанешь данные преобразовывать. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 06:48 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
FeeL86проще всего средствами 1С выгружать в xml, а далее делай с ним, что хочешь. Напрямую с базой работать устанешь данные преобразовывать. чет запутали совсем, разве используя V8.COMConnector необходимы еще какие-то специальные извращения в преобразовании данных? как написано выше СОМ объект все сам умеет делать или я ошибаюсь? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 07:10 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooNFeeL86проще всего средствами 1С выгружать в xml, а далее делай с ним, что хочешь. Напрямую с базой работать устанешь данные преобразовывать. чет запутали совсем, разве используя V8.COMConnector необходимы еще какие-то специальные извращения в преобразовании данных? как написано выше СОМ объект все сам умеет делать или я ошибаюсь? "напрямую с базой" и "СОМ-объект" - совсем не одно и то же. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 08:00 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooNto all и еще вопрос: будет ли работать 1С-ка просто установленная с диска на машину, мне надо лишь для проверки функционала? или нужно ее конфигурить, нужен хасп и т.п. посоветуйте как лучше поступить для теста взаимодействия и экспорта из нее данных 1) Лицензия будет нужна. 2) А у вас совсем нет специалистов по 1С? Если вы с ней вообще не имели дела, дешевле будет человека нанять, что бы он вам скрипт написал. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 09:35 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
FeeL86ZooNto all на ежедневной основе мне надо тянуть инфу с 1С-ки по проведенным документам и кое-каким справочникам проще всего средствами 1С выгружать в xml, а далее делай с ним, что хочешь. Напрямую с базой работать устанешь данные преобразовывать. Я заметил, что работающие с 1С делятся на 2 категории: 1. "...Данные напрямую из 1С-SQL тащить сложно неимоверно, все запутано, требует преобразований данных, и вообще, нанимайте специалиста и работайте через СОМ или xml, и хрен с ним что это тормознуто донельзя..." 2. Просто читают, да и не только читают но и пишут напрямую. Огромное количество примеров этому можно увидеть у соседей в форуме по MS SQL. Я нахожусь во второй категории. Совет топипикстартеру: вот в этом форуме: Структура таблиц БД 1С . Потратьте 1 день на разбор структуры. В 1С8, кстати, структура данных уже вполне вменяемая. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 10:53 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
VladimirKr, на текущей работе коллеги из соседнего отдела тоже сначала были против COM, тянули сразу из таблиц. Это продолжалось до тех пор, пока мы чуть ли не каждый день стали вносить изменения в метаданные, что влекло за собой изменение наименований таблиц в БД. Через пару недель ежедневного секса коллеги попросили написать скрипт для работы через COM - соединение. Другой случай: база на 1С работатет в неизменном виде годами. Сторонняя система прекрасно тащит все нужные данные прямо из таблиц. Так что можно и так и так, решать автору. ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 11:08 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
DmitriyZVladimirKr, на текущей работе коллеги из соседнего отдела тоже сначала были против COM, тянули сразу из таблиц. Это продолжалось до тех пор, пока мы чуть ли не каждый день стали вносить изменения в метаданные, что влекло за собой изменение наименований таблиц в БД. Через пару недель ежедневного секса коллеги попросили написать скрипт для работы через COM - соединение. Другой случай: база на 1С работатет в неизменном виде годами. Сторонняя система прекрасно тащит все нужные данные прямо из таблиц. Так что можно и так и так, решать автору. Да, изменение метаданных это проблема, но кто сказал, что при изменениии метаданных не нужно менять скрипты СОМ-соединений? Согласен, конечно, что меньше изменений делать нужно. Но ведь можно предложенную выше обработку усовершенствовать таким образом, чтобы она создавала скрипты View на таблицах 1С, с алиасами к полям, кторые одновременно являются реквизитами объектов хранения данных. В этом случае, при изменении метаданных необходимо будет только пересоздать эти View, дальнейшая трудоемкость ликвидации последствий изменения метаданных точно такая же как и в случае COM... ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 11:17 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
что прям нет ломаной 1С или какой-нибудь девелоперской версии? еще раз хочу прояснить, помимо изучения структуры БД 1С-ки хочу понимать порядок: - данные с формы шифруются, затем конвертятся в бинарный вид и пишутся в БД, при считывании все наоборот - или же данные конвертятся в бинарник и затем шифруются как шифруются, какие есть интерфейсы для дешифрации, на каком пароле идет шифровка?! если все так заморочено, то думаю, мне будет проще реализовать свой шедулер через COM, тем более что мне надо то тянуть лишь проведенные документы, пару справочников и все. я конечно за исключении ненужных звеньев, но в данном случае считаю СОМ вполне оправданным что скажете? ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 12:22 |
|
Хранение данных в MSSQL
|
|||
---|---|---|---|
#18+
ZooN что скажете? нет в 8.2 ни каких бинарников при хранении реквизитов и ТЧ ... |
|||
:
Нравится:
Не нравится:
|
|||
07.02.2012, 12:27 |
|
|
start [/forum/topic.php?fid=28&msg=37648492&tid=1519875]: |
0ms |
get settings: |
9ms |
get forum list: |
15ms |
check forum access: |
4ms |
check topic access: |
4ms |
track hit: |
38ms |
get topic data: |
13ms |
get forum data: |
3ms |
get page messages: |
68ms |
get tp. blocked users: |
2ms |
others: | 317ms |
total: | 473ms |
0 / 0 |