Гость
Целевая тема:
Создать новую тему:
Автор:
Форумы / [игнор отключен] [закрыт для гостей] / Интеграция 1С и PostgreSQL / 20 сообщений из 20, страница 1 из 1
26.04.2012, 12:07
    #37771999
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
Задача такова. Есть 1С (бухгалтерия сетевая) данных в которой уже довольно много. Да и сетка уже дико тормозит всю работу.
Появилась идея, чтобы на сервере (ХР проф) установить PostgreSQL и там хранить данные, а 1С использовать только как только хороший обработчик (Т.е. данных в 1С7 нету, они только загружаются из PostgreSQL). Нетривиально, но 1С 7.7 ключ есть, охота использовать, да и писать на нём удобно. Но не в этом вопрос.
Вопрос такой. Пока я обмениваюся данными через ADOB connection
А есть ли какой нить более удобный способ обмена информацией?

Ещё раз замечу: 1С Бухгалтерия 7.7 Сетевая (НЕ SQL) версия, поэтому соединение с сервером делается при помощи лома и такой то матери. Поэтому хочется посмотреть идейки связи
...
Рейтинг: 0 / 0
26.04.2012, 12:48
    #37772133
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
Один из способов - OLE.
Другой - внешнюю компоненту написать.
Третий - была разработка на тему XBase в качестве SQL сервера, поищите.
...
Рейтинг: 0 / 0
26.04.2012, 13:01
    #37772185
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
XenoX,

Интересует именно PostgreSQL
...
Рейтинг: 0 / 0
26.04.2012, 16:33
    #37772708
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
Значит для вас 1 и 2 только подходят.

Касательно 2:
можно взять нативного клиента для PG и реализовать обертку для него в виде ВК для 1С.
Как плюс, будет шустрее работать чем ADO. Поищите, может такая ВК уже и написана была.
Для MySQL точно встречал.
...
Рейтинг: 0 / 0
26.04.2012, 20:44
    #37773049
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
XenoX,

Пример бы OLE варианта бы узнать
Ну и про нативные клиенты литературку почитать бы...
...
Рейтинг: 0 / 0
27.04.2012, 09:17
    #37773390
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
Вот пример работы из 1С с MSSQL

Так подключаемся к базе (У вас ConnectionString будет другой, можете собрать его с помощью udl файла):
Код: sql
1.
2.
3.
4.
	AdoConnection = СоздатьОбъект("ADODB.Connection");
	AdoConnection.ConnectionTimeout = 0;  
	AdoConnection.CommandTimeout = 0;
	AdoConnection.Open("Provider=SQLOLEDB.1;Integrated Security=SSPI;Persist Security Info=False;Initial Catalog=MySuperPuperBD;Data Source=localhost");



Так делаем выборки:
Код: sql
1.
2.
3.
4.
5.
6.
	RecSet = СоздатьОбъект("ADODB.RecordSet");
	RecSet.Open("select some ftom dbo.MyGigigantTable", AdoConnection);	
	Пока RecSet.Eof = 0 Цикл			
		Сообщить(RecSet.Fields("some").Value);
		RecSet.MoveNext();
	КонецЦикла;



Так обновляем/изменяем данные в БД:
Код: sql
1.
2.
3.
4.
5.
6.
7.
8.
	AdoCommand = СоздатьОбъект("ADODB.Command");
	AdoCommand.Activeconnection = AdoConnection;
	AdoCommand.CommandType = 1;
	AdoCommand.CommandText = "insert into dbo.MyGigigantTable (Some, Other) values (?,?)";
	AdoCommand.Parameters.Refresh();
	AdoCommand.Parameters.Item(0).Value = 1;
	AdoCommand.Parameters.Item(1).Value = "Какаятастрака-ага";
	AdoCommand.Execute();



Эти простые примеры помогут вам быстро понять, что как работает и углубиться уже в специфику работы с PgSQL.

Про ВК.
На ИТС есть примеры написания внешних компонент под 7.7, вам всего лишь нужно реализовать обертку вокруг нативного PgSQL клиента. Ну тут уже сами думаю разберетесь.
...
Рейтинг: 0 / 0
27.04.2012, 09:19
    #37773391
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
P.S. все свойства и методы объектов ADO можно легко найти в MSDN
...
Рейтинг: 0 / 0
27.04.2012, 12:33
    #37773932
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
XenoX,

Это понятно, примерно такой вариант я и использую.
вот только не понял вот про это:
AdoCommand.Parameters.Item(1).Value = "Какаятастрака-ага";
что эта строка даёт?
...
Рейтинг: 0 / 0
27.04.2012, 15:55
    #37774528
SashaM
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
vlads2XenoX,

Это понятно, примерно такой вариант я и использую.
вот только не понял вот про это:
AdoCommand.Parameters.Item(1).Value = "Какаятастрака-ага";
что эта строка даёт?

Это передача переменных в запрос, учите матчасть
Код: sql
1.
insert into dbo.MyGigigantTable (Some, Other) values (?,?)


Имеет 2 параметра для вставки
Код: sql
1.
2.
AdoCommand.Parameters.Item(0).Value = 1;
AdoCommand.Parameters.Item(1).Value = "Какаятастрака-ага";


В итоге получается
Код: sql
1.
insert into dbo.MyGigigantTable (Some, Other) values (1,"Какаятастрака-ага")


Но отличие в том, что если динамически кодом генерировать запросы, то это уменьшает производительность т.к. каждый динамически созданный запрос парсится, да ещё забивает кэш запросов, что расточает как память, так и скорость поиска плана исполнения все остальных запросов.
...
Рейтинг: 0 / 0
28.04.2012, 09:42
    #37775476
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
SashaM,

Ну я так и понял, только я сразу пишу результат. Быстрее же будет
...
Рейтинг: 0 / 0
28.04.2012, 13:29
    #37775846
Ирина Горская
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
XenoXЗначит для вас 1 и 2 только подходят.

Касательно 2:
можно взять нативного клиента для PG и реализовать обертку для него в виде ВК для 1С.

Отличная идея. Именно так было реализовано у нас.
...
Рейтинг: 0 / 0
28.04.2012, 13:35
    #37775856
Ирина Горская
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
vlads2Ещё раз замечу: 1С Бухгалтерия 7.7 Сетевая (НЕ SQL) версия

Сама 1С Бухгалтерия 7.7 не является сетевой или SQL. Это лишь конфигурация. Поставьте 1С 7.7 SQL-ю версию, работающую с MS SQL и перенесите свою конфигурацию туда. С 2000-м проблем вообще нет, для 2005-го пару файлов надо поменять. Работать будет быстрее и надёжней.

Подружить 7.7 и PG очень сложно. Проходили уже.
...
Рейтинг: 0 / 0
28.04.2012, 14:20
    #37775940
AHDP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
vlads2, хотите из 1С сделать конструктор форм!?
Если найдёте SQL ключик - то была разработка позволяющая его заменить на PG.
Для файловых версий на инфостарте были две разработки позволяющие перейти от файлов к SQL.
...
Рейтинг: 0 / 0
28.04.2012, 23:10
    #37776485
Злой Бобр
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
vlads2,

Я тебе уже отвечал в твоей теме что все у вас прекрасно будет работать при наличии программиста с некривыми руками. Поэтому переходы хоть на PG, хоть на MS SQL, хоть на MySQL - ничего недадут. Ну нерешается кадровая проблема путем замены софта.
...
Рейтинг: 0 / 0
29.04.2012, 01:44
    #37776553
Интеграция 1С и PostgreSQL
есть готовое решение 1с + постгре
http://wiki.etersoft.ru/selta
...
Рейтинг: 0 / 0
02.05.2012, 07:20
    #37778559
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
Максимов Михаил,

И как это упростит работу? Это даст только то, что при работе я буду использовать SQL команды а не PostgreSQL команды.
...
Рейтинг: 0 / 0
02.05.2012, 07:33
    #37778569
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
AHDPДля файловых версий на инфостарте были две разработки позволяющие перейти от файлов к SQL.
А попопдробнее можно?
...
Рейтинг: 0 / 0
02.05.2012, 13:21
    #37778956
AHDP
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
Максимов Михаил,

Это всего лишь ограниченная замена MS SQL на Postgre для соответствующих версий 1С.


vlads2,
http://infostart.ru/public/15211/
http://infostart.ru/public/14664/

И ещё одна очень полезная вещь для файловых 1Сок
http://infostart.ru/public/15977/
...
Рейтинг: 0 / 0
02.05.2012, 17:29
    #37779386
XenoX
Участник
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
SashaMНо отличие в том, что если динамически кодом генерировать запросы, то это уменьшает производительность т.к. каждый динамически созданный запрос парсится, да ещё забивает кэш запросов, что расточает как память, так и скорость поиска плана исполнения все остальных запросов.

+ от динамического SQL можно поймать инъекцию. А как показывает практика, многие даже и не подозревают о такой интересной возможности.
...
Рейтинг: 0 / 0
03.05.2012, 07:59
    #37779849
vlads2
Гость
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Интеграция 1С и PostgreSQL
AHDP,

В вот за это спасибо. Конечно, многого там мало. Но тож неплохо.
...
Рейтинг: 0 / 0
Форумы / [игнор отключен] [закрыт для гостей] / Интеграция 1С и PostgreSQL / 20 сообщений из 20, страница 1 из 1
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


Просмотр
0 / 0
Close
Debug Console [Select Text]