Переключение на Главную Страницу Страницы: [1] 2  ОтправитьПечать
Горячая тема (более 10 ответов) Нужен быстрый экспорт в 1С (число прочтений - 7607 )
Sergey Popov
YaBB Newbies
*
Отсутствует



Сообщений: 3
Местоположение: Сыктывкар
Зарегистрирован: 31. Января 2013
Пол: Мужской
Нужен быстрый экспорт в 1С
31. Января 2013 :: 11:39
Печать  
Всем привет!

Есть задача: в момент создания документа (например счет-фактура) в CRM (БД FireBird) требуется
быстро в течении 10-15 сек (макс до 1 мин.) создать счет-фактуру в 1С и получить из 1С номер документа.

Оптимально — это мгновенное резервирование номера документа в 1С.

Клиент (CRM) к БД написан на С++ и Win32API.

Т.е. нужен быстрый доступ к 1С из с++.

Желателен готовый набор классов/библиотека.

Сергей.
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #1 - 31. Января 2013 :: 11:52
Печать  
версия 1с?
тип БД 1с?
  

1&&2&&3
Наверх
 
IP записан
 
Sergey Popov
YaBB Newbies
*
Отсутствует



Сообщений: 3
Местоположение: Сыктывкар
Зарегистрирован: 31. Января 2013
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #2 - 31. Января 2013 :: 11:58
Печать  
Версии 1С:
1. 7.7 - файловая и MS SQL
2. 8.х - файловая и MS SQL
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #3 - 31. Января 2013 :: 13:06
Печать  
для 7.7 sql вполне можно напрямую в БД создавать новый пустой СФ и получать его номер
для 8.х я бы смотрел в сторону веб-сервисов и создания через них нового пустого СФ
но, к сожалению, готовых решений я не встречал
  

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



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #4 - 31. Января 2013 :: 13:52
Печать  
[quote author=pasergey link=1359632388/0#0 date=1359632388]
Есть задача: в момент создания документа (например счет-фактура) в CRM (БД FireBird)[/quote]
Я один морщусь читая это?
Что делает счет-фактура в СРМ????
« Последняя редакция: 04. Февраля 2013 :: 07:20 - trdm »  
Наверх
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #5 - 31. Января 2013 :: 17:02
Печать  
trad писал(а) 31. Января 2013 :: 13:06:
для 7.7 sql вполне можно напрямую в БД создавать новый пустой СФ и получать его номер
для 8.х я бы смотрел в сторону веб-сервисов и создания через них нового пустого СФ
но, к сожалению, готовых решений я не встречал

1С - ладно. Оно настраиваемо.
А как быть с сирм на фраер-берд?
Там есть интерфейс оповещения?
  
Наверх
IP записан
 
trdm
1c++ power user
qt1l developer
1c++ moderator
Отсутствует



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #6 - 31. Января 2013 :: 17:10
Печать  
[quote author=pasergey link=1359632388/0#0 date=1359632388]Т.е. нужен быстрый доступ к 1С из с++.
Желателен готовый набор классов/библиотека.
Сергей.[/quote]
на ум приходит http://www.rikcenter.ru/solutions.php
[url=http://www.rikcenter.ru/download/statia.rar]Работа с удаленными базами 1С с использованием компоненты NetaInet[/url].
  
Наверх
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #7 - 31. Января 2013 :: 17:36
Печать  
trdm писал(а) 31. Января 2013 :: 17:02:
А как быть с сирм на фраер-берд?
Там есть интерфейс оповещения?

а при чем тут FireBird?
речь же в общем про некоего самописного клиента 1совской базы
  

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



Сообщений: 2343
Местоположение: г. Ростов-на-Дону
Зарегистрирован: 19. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #8 - 31. Января 2013 :: 20:28
Печать  
trad писал(а) 31. Января 2013 :: 17:36:
trdm писал(а) 31. Января 2013 :: 17:02:
А как быть с сирм на фраер-берд?
Там есть интерфейс оповещения?

а при чем тут FireBird?
речь же в общем про некоего самописного клиента 1совской базы

Надо же сигнал поиметь из СРМ о записи документа.
Через тригеры в огнептицы тоже можно поймать.
Только я не в курсе есть ли тригеры в фраерберд и могут ли они взаимодействовать со внешней средой.
  
Наверх
IP записан
 
Sergey Popov
YaBB Newbies
*
Отсутствует



Сообщений: 3
Местоположение: Сыктывкар
Зарегистрирован: 31. Января 2013
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #9 - 01. Февраля 2013 :: 04:32
Печать  
Всем спасибо за участие.

1. СФ в CRM - это быстро, удобно и без участия людей. в отличии от 1С.
2. с++ клиент написан для FB, а не для 1С
3. триггеры в FB есть, и с внешним миром общаться могут

trad: как в 7.7 sql - создать болванку СФ? ссылку/пример плиз.
по web-сервисам в 1С 8 - тоже хотелось бы примеров.

Спасибо.
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #10 - 01. Февраля 2013 :: 05:49
Печать  
[quote author=pasergey link=1359632388/0#9 date=1359693132]
trad: как в 7.7 sql - создать болванку СФ? ссылку/пример плиз.
[/quote]
только словесное описание алгоритма:
[code]начать транзакцию
заблокировать журнал вызовом _1sp__1SJOURN_TLockX
получить максимальный iddoc+1 из _1SJOURN
получить максимальный @docno = docno+1 в _1SJOURN в границах вида или нумератора
вставить запись в _1SJOURN с полученными iddoc и docno, прочие поля константы
вставить запись dhXXX документа СФ
select @docno
зафиксировать транзацию[/code]дальше сам
  

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



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Нужен быстрый экспорт в 1С
Ответ #11 - 01. Февраля 2013 :: 06:40
Печать  
ты забыл еще про пару табличек.
(как минимум)
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #12 - 01. Февраля 2013 :: 07:10
Печать  
Eprst писал(а) 01. Февраля 2013 :: 06:40:
ты забыл еще про пару табличек.
(как минимум)

дополни
  

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



Сообщений: 3397
Зарегистрирован: 08. Октября 2007
Re: Нужен быстрый экспорт в 1С
Ответ #13 - 01. Февраля 2013 :: 07:24
Печать  
_1SUIDCTL
_1SDNLOCK


Ну и, раз это счет фактура. то еще и _1SCRDOC заодно

ЗЫ: с тобой на бентли не накопишь
Улыбка
  
Наверх
 
IP записан
 
trad
1c++ power user
1c++ donor
1c++ moderator
Отсутствует



Сообщений: 3050
Местоположение: Киров
Зарегистрирован: 23. Мая 2006
Пол: Мужской
Re: Нужен быстрый экспорт в 1С
Ответ #14 - 01. Февраля 2013 :: 08:45
Печать  
Eprst писал(а) 01. Февраля 2013 :: 07:24:
_1SUIDCTL
_1SDNLOCK

Ну и, раз это счет фактура. то еще и _1SCRDOC заодно

ЗЫ: с тобой на бентли не накопишь
Улыбка


_1SDNLOCK - требуется для захвата номеров при интерактивном вводе. Когда номер получен клиентом, транзакция закончена, но запись в журнал еще не состоялась. Не мой случай. В моем примере номер получается и записывается в одной транзакции. Но соглашусь с тем, что получив номер, желательно посмотреть что бы он был больше того который сейчас в _1SDNLOCK, но писать туда не надо.

_1SUIDCTL - имеет отношение только к справочникам. Нет не только. Но когда я изучал процессы создания и записи документов, не увидел необходимости его поддержки. Возможно это либо атавизм либо не реализованная возможность иметь iddoc еще не записанного документа.

_1SCRDOC - по задаче не требуется ставить СФ в какое-либо подчинение.
  

1&&2&&3
Наверх
 
IP записан
 
Переключение на Главную Страницу Страницы: [1] 2 
ОтправитьПечать