powered by simpleCommunicator - 2.0.61     © 2026 Programmizd 02
Целевая тема:
Создать новую тему:
Автор:
Закрыть
Цитировать
Форумы / [игнор отключен] [закрыт для гостей] / Обмен с внешним приложением
82 сообщений из 82, показаны все 4 страниц
Обмен с внешним приложением
    #36268507
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Здравствуйте. Подскажите решение. Есть внешнее приложение, по мере ввода данных там они должны попадать в 1с версия 7.7 OLE не подходит по причине того, что ввод данных интенсивный, а загрузка объекта V77s.Application занимет несколько секунд, причем данные во внешней программе вводятся многими пользователями одновременно. Желаемое условие - on-line обмен.

Может быть есть способ как-то сгенерировать какое-нибудь событие в самой 1с из внешней программы, чтоб она посмотрела в такую-то папочку например...
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268581
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDim, да и без команды стороннего приложения можно

ОбработкаОжидания(ИмяПроцедуры(),ИнтервалВызова) вам должна помочь (запускается процедурка в указаный интервал)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268603
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Last1Cmen,

Здравствуйте, я рассматриваю такое решение, но пока ищу что-то лучшее. В этом варианте нужно очень часто запускать обработку по таймеру, мониторить чтоб она выбрала все из каталога и при этом не запустился еще раз при истечении временного интервала. А что скажете по поводу прямого доступа к базе данных 1с, т.е. если я буду создавать объекты 1с, прямой вставкой строк в БД, изучив структуру объектов. Этим способом кто-то пользуется вообще и насколько он способен к осуществлению?

Спасибо.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268648
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
У 1С есть интерфейс внешних компонент. А там - спец.интерфейс для обработки внешних событий.
Написать такую компоненту можно на любом COM-языке.
Примеры в комплекте поставки для VB C++ Delphi
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268651
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
авторВ этом варианте нужно очень часто запускать обработку по таймеру, мониторить чтоб она выбрала все из каталога и при этом не запустился еще раз при истечении временного интервала.

да... в этом варианте сеанс 1це должен работать постоянно чтобы отрабатывала процедура, а насчет опасения повторых запусков то не стоит... чаще чем указано оно не отработает... только вот беда в том что будет если преидущий не успел отработать а необходимо запускать следующий (хотя в принципе можно обработать доступность в процедуре вызова и если источник недоступен то вернуться)

автор А что скажете по поводу прямого доступа к базе данных 1с, т.е. если я буду создавать объекты 1с, прямой вставкой строк в БД, изучив структуру объектов. Этим способом кто-то пользуется вообще и насколько он способен к осуществлению?

очень специфично... а если будут создаваться новые объекты то проводить контроль целостности БД на уровне самой СУБД маловероятно (можно конечно но опять же очень спецефично)

скажем если таблицы будут только апдейтится (не берем в расчет итоги и т.д.) то вполне возможно (скажем синхронизация справочника товаров а если есть новые то тогда уже в список и вызов ОЛЕ чтоб уже сама 1це их генерила)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268662
Last1Cmen
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
главное - новые объекты лучше создавать из среды 1це для обеспечения их уникальности и последующей однозначной идентификации
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268702
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Last1Cmen,

Вот я ж про это ... не успеет отработать, а новый запустится. Есть еще несколько минусов у этого решения.

Насчет доспута к таблица, мне необходимо записывать вновь созданные документы - 2 вида и новые элементы справочников, вот в принципе и весь функционал.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268706
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDim,
Напрямую в таблицы вставлять можешь.
Для обеспечения целостности тебе хватит написать функцию генерации ID.
Так как вся целостность это обеспечение уникальности этих ID.
Для всех ID используется уникальный индекс.
Для справочников например все достаточно просто.
Для документов уже гораздо сложнее. Кроме того что при создании документа ты должен занести информацию в ряд таблиц DT,DH, 1Sjourn и т.д. чтобы так сказать отразить факт его существования, ты его еще должен провести этот документ по регистрам? а вот здесь уже сложности начинаются - по сути ты должен продублировать все алгоритмы проведения по регистрам.
Поэтому лучше заполнять справочники и документы на прямую, а проводить уже непосредственно в 1Ц.
Могу например тебе скинуть кусочек алгоритма по заполнению справочников. В это примере функция генрации новых ID не используется т.к. идет перенос их нескольких семерочных баз в одну. И id беруться уже оттуда.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268715
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pailУ 1С есть интерфейс внешних компонент. А там - спец.интерфейс для обработки внешних событий.
Написать такую компоненту можно на любом COM-языке.
Примеры в комплекте поставки для VB C++ Delphi

А можно поподробнее. Мне необходимо генерировать события в 1с из внешнего источника.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268718
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhvDinDim,
Напрямую в таблицы вставлять можешь.
Для обеспечения целостности тебе хватит написать функцию генерации ID.
Так как вся целостность это обеспечение уникальности этих ID.
Для всех ID используется уникальный индекс.
Для справочников например все достаточно просто.
Для документов уже гораздо сложнее. Кроме того что при создании документа ты должен занести информацию в ряд таблиц DT,DH, 1Sjourn и т.д. чтобы так сказать отразить факт его существования, ты его еще должен провести этот документ по регистрам? а вот здесь уже сложности начинаются - по сути ты должен продублировать все алгоритмы проведения по регистрам.
Поэтому лучше заполнять справочники и документы на прямую, а проводить уже непосредственно в 1Ц.
Могу например тебе скинуть кусочек алгоритма по заполнению справочников. В это примере функция генрации новых ID не используется т.к. идет перенос их нескольких семерочных баз в одну. И id беруться уже оттуда.

Очень буду признателен за кусок алгоритма.

Спасибо.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268745
pail
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimpailУ 1С есть интерфейс внешних компонент. А там - спец.интерфейс для обработки внешних событий.
Написать такую компоненту можно на любом COM-языке.
Примеры в комплекте поставки для VB C++ Delphi

А можно поподробнее. Мне необходимо генерировать события в 1с из внешнего источника.
Маленькая книжка с дискетой продается франчами за копейки.
Сотни тысяч ссылок в и-нете.
Может, среди них и эта книжка или дискета попадутся.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268759
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
До 18 00 по москве подождеш?
так как только дома.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268775
Шурыгин Иван Сергеевич
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimpailУ 1С есть интерфейс внешних компонент. А там - спец.интерфейс для обработки внешних событий.
Написать такую компоненту можно на любом COM-языке.
Примеры в комплекте поставки для VB C++ Delphi

А можно поподробнее. Мне необходимо генерировать события в 1с из внешнего источника.
такое решение не будет оптимальным по скорости, а книжек и правда хватает, http://progbook.ru/1c/ но я бы предложил бы попробывать работать не с 1с, а с БД на уровне sql запросов, особенно если база на 1с сервере, на мой взгляд это было бы удобно, а для того чтобы пользователи 1С не создавали в режиме предприятия документе, и целостность не портилась, я бы предложил пользоваться блокировками, например на время записи нового документа, таблица документов блокируется, так как непосредственно сама запись 1го нового объекта будет быстрой пользователи не будут замечать таких блокировок
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268796
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вот здесь http://1csql.ru/materials/articles/develop.html~59d890ad-7ddb-f487-3aae-bcf78d54a0c4 написанно как и в каком виде хранятся ID в базе.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268798
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhvДо 18 00 по москве подождеш?
так как только дома.

Да конечно, спасибо.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268801
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
>>так как непосредственно сама запись 1го нового объекта будет быстрой пользователи не будут замечать таких блокировок

смотря чего писать... блокируются журналы и регистры. А если документ бухгалтерский - то таблица проводок. А она одна...
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268806
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Шурыгин Иван СергеевичDinDimpailУ 1С есть интерфейс внешних компонент. А там - спец.интерфейс для обработки внешних событий.
Написать такую компоненту можно на любом COM-языке.
Примеры в комплекте поставки для VB C++ Delphi

А можно поподробнее. Мне необходимо генерировать события в 1с из внешнего источника.
такое решение не будет оптимальным по скорости, а книжек и правда хватает, http://progbook.ru/1c/ но я бы предложил бы попробывать работать не с 1с, а с БД на уровне sql запросов, особенно если база на 1с сервере, на мой взгляд это было бы удобно, а для того чтобы пользователи 1С не создавали в режиме предприятия документе, и целостность не портилась, я бы предложил пользоваться блокировками, например на время записи нового документа, таблица документов блокируется, так как непосредственно сама запись 1го нового объекта будет быстрой пользователи не будут замечать таких блокировок

С блокировками не проблема, документы, которые передаются в 1с - не создаются в ней самой и не будут создаваться.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268808
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimС блокировками не проблема, документы, которые передаются в 1с - не создаются в ней самой и не будут создаваться.

а что они тогда в 1С делают?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268811
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Господин ПЖDinDimС блокировками не проблема, документы, которые передаются в 1с - не создаются в ней самой и не будут создаваться.

а что они тогда в 1С делают?

Создают документы другого вида.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268818
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
формально разницы нет, все равно образуются документы
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268822
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Да, будет быстро - очень быстро, тем более у тебя есть возможность делать UPDATE и INSERT массово, а не по каждому элементу. 1С так быстро работать не умеет.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268829
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
pailDinDimpailУ 1С есть интерфейс внешних компонент. А там - спец.интерфейс для обработки внешних событий.
Написать такую компоненту можно на любом COM-языке.
Примеры в комплекте поставки для VB C++ Delphi

А можно поподробнее. Мне необходимо генерировать события в 1с из внешнего источника.
Маленькая книжка с дискетой продается франчами за копейки.
Сотни тысяч ссылок в и-нете.
Может, среди них и эта книжка или дискета попадутся.

Такое не подходит, в о внешней компоненте зашит тот же механизм OLE для доступа к объектам 1с, вызов функций компоненты, в которых зашит это функционал, ничего не изменяет.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268834
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhvДа, будет быстро - очень быстро, тем более у тебя есть возможность делать UPDATE и INSERT массово, а не по каждому элементу. 1С так быстро работать не умеет.

А кто-то пользуется таким способом, или я буду первым?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268860
Господин ПЖ
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
http://softpoint.ru/
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36268869
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
1CSQL.ru
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269209
VladimirKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimЗдравствуйте. Подскажите решение. Есть внешнее приложение, по мере ввода данных там они должны попадать в 1с версия 7.7 OLE не подходит по причине того, что ввод данных интенсивный, а загрузка объекта V77s.Application занимет несколько секунд , причем данные во внешней программе вводятся многими пользователями одновременно. Желаемое условие - on-line обмен.

Может быть есть способ как-то сгенерировать какое-нибудь событие в самой 1с из внешней программы, чтоб она посмотрела в такую-то папочку например...

А кто вам мешает создать ОЛЕ объект всего один раз и использовать его потом в различных операциях обмена без пересоздания?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269239
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VladimirKrDinDimЗдравствуйте. Подскажите решение. Есть внешнее приложение, по мере ввода данных там они должны попадать в 1с версия 7.7 OLE не подходит по причине того, что ввод данных интенсивный, а загрузка объекта V77s.Application занимет несколько секунд , причем данные во внешней программе вводятся многими пользователями одновременно. Желаемое условие - on-line обмен.

Может быть есть способ как-то сгенерировать какое-нибудь событие в самой 1с из внешней программы, чтоб она посмотрела в такую-то папочку например...

А кто вам мешает создать ОЛЕ объект всего один раз и использовать его потом в различных операциях обмена без пересоздания?

Я не представляю, как это можно реализовать. Приложение распределенное. Клиентов море. Всего один раз на каждом клиенте?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269264
VladimirKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimVladimirKrDinDimЗдравствуйте. Подскажите решение. Есть внешнее приложение, по мере ввода данных там они должны попадать в 1с версия 7.7 OLE не подходит по причине того, что ввод данных интенсивный, а загрузка объекта V77s.Application занимет несколько секунд , причем данные во внешней программе вводятся многими пользователями одновременно. Желаемое условие - on-line обмен.

Может быть есть способ как-то сгенерировать какое-нибудь событие в самой 1с из внешней программы, чтоб она посмотрела в такую-то папочку например...

А кто вам мешает создать ОЛЕ объект всего один раз и использовать его потом в различных операциях обмена без пересоздания?

Я не представляю, как это можно реализовать. Приложение распределенное. Клиентов море. Всего один раз на каждом клиенте?

Ну если так - тады ой. Ничего не могу придумать кроме сервера приложений, удерживающего 1С-ОЛЕ, к которому обращаются клиенты. Тогда проще действительно писать напрямую в базу 1С, а потом отдельной обработкой 1С проводить записанные документы.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269275
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Так пусть будет еще один клиент "робот" и у него как раз будет подключение к 1с. И ему и сливайте все задачи.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269303
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программист 1сТак пусть будет еще один клиент "робот" и у него как раз будет подключение к 1с. И ему и сливайте все задачи.

Это как?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269388
VladimirKr
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimПрограммист 1сТак пусть будет еще один клиент "робот" и у него как раз будет подключение к 1с. И ему и сливайте все задачи.

Это как?

Программист 1с +1

например все данные, требующие экспорта в 1С клиенты связывают по ссылкам с некоей таблицей, которую мониторит робот с каким-то интервалом времени и экспортирует появляющиеся данные, выставляя в таблице отметки о выполнении (ну или удаляя оттуда выполненные).
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269558
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
VladimirKrDinDimПрограммист 1сТак пусть будет еще один клиент "робот" и у него как раз будет подключение к 1с. И ему и сливайте все задачи.

Это как?

Программист 1с +1

например все данные, требующие экспорта в 1С клиенты связывают по ссылкам с некоей таблицей, которую мониторит робот с каким-то интервалом времени и экспортирует появляющиеся данные, выставляя в таблице отметки о выполнении (ну или удаляя оттуда выполненные).

Ну а чем это лучше ОбработкиОжидания - которая будет лезть в каталог с указанным интервалом времени и забирать от туда файлы. Тут вопрос в другом я ищу лучшее решение.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269646
Программист 1с
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimНу а чем это лучше ОбработкиОжидания - которая будет лезть в каталог с указанным интервалом времени и забирать от туда файлы. Тут вопрос в другом я ищу лучшее решение.Лучшее - для 7 это терминал. Но раз вы не хотите туда пускать пользователей, то смотрите в сторону 8 с веб интерфейсом.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269734
DinDim
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Программист 1с,

Причем тут терминал. Приложение из которого нужно передавать данные не принадлежит к продуктам семейства 1с
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269848
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
--очищаем справочник единицы
DELETE FROM SC75

Ну вот и примерчики подоспели:

--заполняем справочник единицы
INSERT INTO sc75 (id
,PARENTEXT
,ismark
,verstamp
,SP79
,SP76
,SP78
,SP80
)
Select единицы.SprEdId
,единицы.SprNomId
,единицы.ismark
,единицы.verstamp
,SP79=единицы.SprOKEIId
,SP76=единицы.SP76
,SP78=единицы.SP78
,SP80=единицы.SP80

From
#TranzOKEI единицы
--DBCC DBREINDEX(sc75)


--очищаем справочник ОКЕИ
DELETE FROM SC41
--заполняем справочник единицы
INSERT INTO SC41 (id
,CODE
,DESCR
,ismark
,verstamp
,SP42
)
SELECT q.SprOKEIId id
,ОКЕИ.CODE
,SUBSTRING(ОКЕИ.DESCR,1,25) DESCR
,ОКЕИ.ismark
,ОКЕИ.verstamp
,ОКЕИ.SP5482 FROM(
select SprOKEIId
from #TranzOKEI
right join (SELECT * FROM #остатки товары WHERE товары.isfolder=2) товары on #TranzOKEI.SprNomId = товары.id
group by SprOKEIId)q
inner join trade2002..SC4890 ОКЕИ with (nolock) on ОКЕИ.id = q.SprOKEIId
--DBCC DBREINDEX(SC41)
--select * from sc41
--заполняем справочник номенклатура
INSERT INTO sc84 (id
,parentid
,code
,descr
,isfolder
,ismark
,verstamp
,SP85
,SP86
,SP208
,SP2417
,SP97
,SP5066
,SP5013
,SP94
,SP4427
,SP103
,SP104
,SP5012
,SP95
,SP101
)
Select товары.id
,товары.parentid
,товары.code
,SUBSTRING(товары.descr,1,50) descr
,товары.isfolder
,товары.ismark
,товары.verstamp
,SP85=товары.SP85--' '
,SP86=товары.SP86--' 0 '
,SP208=0
,SP2417=' 2Q2 '--' 0 '
,SP97=0.000
,SP5066=0
,SP5013=' 0 '
,SP94=товары.SP94--' 0 '
,SP4427=' 0 '
,SP103=' OHE '--' 0 '
,SP104=' 8 '--' 0 '
,SP5012=' 0 '
,SP95=''
,SP101=товары.sp101--''

From
#остатки товары
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36269878
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDim,
Если подождеш до понедельника, могу еще Хранимку выслать которая ID генерирует (автор не я).
Но работает в нескольких местах без проблем.

Обрати внимание на то как ты будеш связывать объекты в обеих базах.
Может понадобится если ты будеш сливать измененные объекты.
Или тебе потребуется разделить один документ из своей БД на два одного вида в БД 1С.
Скачать документацию по ToySQL там есть описание предопределенных полей в таблицах 1С.
Еще сам ID шестисимвольный, остальные символы используются для УРИБа, т.е. для индетефикации того с какой базы данный объект. Если у тебя база 1Ц не распределенная эти три символа можеш использовать на свое усмотрение :)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36270723
Enot5467
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Писать в базу на прямую? Не советовал бы такого - чревато последствиями. Сишники не пишут в MDF файлы не потому что это сложно, а потому что это чревато. Так что, автор, подумайте 10 раз и посмотрите уже рабочие системы, особенно проблемы с ними.
ИМХО, лучшим вариантом со всем 1эсами, это через промежуточное хранилище (файловое, SQL, в зависимости от желаемой скорости, надёжности и функционала). Скорости огромные, отсутствие привязанности к платформе и (самое главное) можно обновлять/сопровождать все это безболезненно
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36271015
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Enot5467
ИМХО, лучшим вариантом со всем 1эсами, это через промежуточное хранилище (файловое, SQL, в зависимости от желаемой скорости, надёжности и функционала). Скорости огромные, отсутствие привязанности к платформе и (самое главное) можно обновлять/сопровождать все это безболезненно
+1
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36271355
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Enot5467,
Можно в кртатце, чем черевато?
Сишники пожет и не пишут в таблицы напрямую (кстати как и 1С ники), зато SQL щики пишут.
Временное хранилище имеет смысл использовать для хранения связей ID базы 1С и ID второй базы(1С или не 1С). Но еще раз повторюсь если БД не распределенная можно три последних символа в ID использовать для собственных нужд, в том числе и для хранения связей.
Вообще лучший (как наиболее простой) в реализации вариант - это из 1Ц лезть в таблицы второй БД, а в 1Ц создавать объекты средстванми 1Ц, но не всегда данный метод подходит.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36271866
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Enot5467,

"Прямого доступа в mdf" сишникам и не требуется, если считать mdf базой mssql-я, сишникам вполне хватает и OLEDB\ODBC\ADO и скорость работы этих механизмов вполне их устраивает :) Тут суть больше в том, предоставляет ли приложение определенное API для работы со структурой данных без прямой записи в таблицы, или же предоставлет описание схемы БД для возможности "штатной" прямой записи. 1С предоставлет API - через запуск соотв. OLE-объетка и работы штатно через объекты конфигурации, при этом схема БД - закрыта. Медлительность такой работы и толкает на "прямую запись". Согласен с тем, что надо очень хорошо подумать стоит ли оно того, но писать на прямую в таблицы 1С не особо проблематично, особенно если использовать прямую запись только для создания объектов. А проводить документы уже вызовом самой 1С. Другое дело что проблематично сделать универсальный механизм.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36271900
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhvDinDim,
Если подождеш до понедельника, могу еще Хранимку выслать которая ID генерирует (автор не я).
Но работает в нескольких местах без проблем.
Я автор. :) Только это не совсем хранимка, это пара функций работы с 1Сными ID:
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
15.
16.
17.
18.
19.
20.
21.
CREATE FUNCTION [dbo].[GetIDInt] (@id int)                 
/*** преобразует число в 1С-36 char(9) с тремя пробелами в конце ***/
RETURNS char( 9 ) AS  
BEGIN 
  declare @Res varchar( 9 ), @Mul int, @Chars char( 36 ), @i int 
  if @id= 0 
    set @res='     0   '
  else begin
    select @Res='', @Mul= 60466176 , @Chars='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ' 
    while (@id<> 0 ) or (len(@res)< 6 ) begin
      set @i=floor(@id/@Mul)
      if (@i= 0 ) and (ltrim(@res)='') 
        set @Res=@Res+' '
      else
        set @Res=@Res+substring(@Chars, @i+ 1 ,  1 )
      set @id=@id-(@i*@Mul)
      set @Mul=@Mul/ 36 
    end
  end
  return convert(char( 9 ), @Res)
END
и
Код: plaintext
1.
2.
3.
4.
5.
6.
7.
8.
9.
10.
11.
12.
13.
14.
CREATE FUNCTION [dbo].[GetIntID] (@ID char( 9 ))            
/*** преобразует 1С-36 char(9) в число. передние пробелы НЕ значимы ***/
RETURNS bigint AS  
BEGIN 
  declare @Res bigint, @Mul bigint, @Chars char( 36 ), @Ch char( 1 ), @Len smallint
  select @Mul= 1 , @ID=substring(@ID,  1 ,  6 ), @Len=Len(@ID)- 1 , @Res= 0 , @Chars='0123456789ABCDEFGHIJKLMNOPQRSTUVWXYZ'
  while @Len> 0  select @Mul=@Mul* 36 , @Len=@Len- 1 
  while @ID<>'' begin
    set @ch=substring(@Id,  1 ,  1 )
    if @Ch<>' ' set @Res=@Res+(charindex(@Ch, @Chars)- 1 )*@Mul
    select @Mul=@Mul/ 36 , @ID=substring(@ID,  2 ,  6 )
  end
  return @Res
END
и соотв. хранимка, например, для документов содержит
Код: plaintext
1.
2.
3.
...
declare @newID char( 9 )
...
select @newID=dbo.GetIDInt(dbo.GetIntId(max(ID))+ 1 ) from _1SJOURN
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36271956
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Егоров Александр,
Саша спасибо.
А то пренебрежительное отношение к 1С уже немного напрягает.
Тут криво - там криво, первое нельзя - второе нельзя.
Зачастую без аргументов.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36272077
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhv,

Верблюда спросили: "Почему у тебя шея кривая?"
-"А что у меня прямое?" - удивился верблюд.
(с) Народная мудрость :)

Но это не значит, что верблюд - бесполезное животное :) В пустыне - так без него вообще никак :)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36272127
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
DinDimТут вопрос в другом я ищу лучшее решение.

На мой взгляд - пишется сервис, который умеет получать данные из Вашей системы "напрямую", возможно и как реакция на какое-либо событие Вашей системы. Сервис при старте поднимает по OLE единственный экземпляр 1Ски. А по событию запускает в 1Ске необходимые обработки. Обработки делаются внешними ert-шками, чтобы не "портить" конфигурацию. При наличии массового ввода объектов одним событием, и при наличии тормозов в обработках - механизм переноса объектов в ert меняется из 1Сного на компилируемый в sql-ые процедуры. До этого уровня конфигурация остается нетронутой. Минус - обновление конфигурации потребует остановки сервиса (или реализации дополнительных методов Load1c()\Unload1c()) и буферизации работы с 1С. Если массовый ввод объектов требует массового же проведения документов, и оно начнет торомозить - без оптимизации проведения документов не обойтись. Это уже требует изменения конфигурации 1С и открывает поле для творчества "работы напрямую". Хотя и переносит конфигурацию в разряд "самописок".
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36272222
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Егоров АлександрDinDimТут вопрос в другом я ищу лучшее решение.

На мой взгляд - пишется сервис, который умеет получать данные из Вашей системы "напрямую", возможно и как реакция на какое-либо событие Вашей системы. Сервис при старте поднимает по OLE единственный экземпляр 1Ски. А по событию запускает в 1Ске необходимые обработки. Обработки делаются внешними ert-шками, чтобы не "портить" конфигурацию. При наличии массового ввода объектов одним событием, и при наличии тормозов в обработках - механизм переноса объектов в ert меняется из 1Сного на компилируемый в sql-ые процедуры. До этого уровня конфигурация остается нетронутой. Минус - обновление конфигурации потребует остановки сервиса (или реализации дополнительных методов Load1c()\Unload1c()) и буферизации работы с 1С. Если массовый ввод объектов требует массового же проведения документов, и оно начнет торомозить - без оптимизации проведения документов не обойтись. Это уже требует изменения конфигурации 1С и открывает поле для творчества "работы напрямую". Хотя и переносит конфигурацию в разряд "самописок".

+1
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36272275
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Егоров Александр,

описанный Вами вариант с сервисом очень тормознутый. Из предложденного выше, лучше всего работает вариант с интерфейсными таблицами. Надежно, быстро и независимо друг от друга. Ну и просто конечно же.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36272453
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafm,
А где тормознутость в примере Егорова Александра?
Ведь 1С по OLE поднимается только для того чтоб документы создавать/проводить, а сами объекты тянуться из нужной БД прямыми запросами, в том числе с использованием интерфейсных таблиц в которых храним связи.
А создаются/проводятся либо средствами 1С либо, опять же напрямую.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36272590
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafm,

Почему тормознутый? Автору, как я понял, основные тормоза дает как раз дает время запуска 1С по событию внешнего приложения: "OLE не подходит по причине того, что ввод данных интенсивный, а загрузка объекта V77s.Application занимет несколько секунд, причем данные во внешней программе вводятся многими пользователями одновременно. Желаемое условие - on-line обмен". Запись одного элемента (или одного документа) через уже запущенный OLE-экземпляр немногим дольше прямой записи этого элемента непосредственно в таблицу. проведение - другое дело, но эмуляция проведения документов извне - чревато. :) Как минимум - синхронизации обновления конфигурации 1С и собственных процедур проведения. И давайте тогда определимся с интерфейсными таблицами, дабы не возникло "терминологической путаницы" :)
Я предполагаю таблицы соответствий ID объектов 1С неким представлениям (или напрямую PK) объектов внешней системы. Без этого не обойтись, но это дело лучше поручить либо самой внешней системе, либо сервису обмена. Хранить какие-то внешние связи в 1С - дорогое удовольствие. Соотв. и скорость формирования этих таблиц тогда лежит вне 1С. Держать в собственной системе представление элементов "так, как это сделано в 1С" - опять таки, а с какой именно конфигурацией 1С Вы хотите держать соответствие? А если в этой конкретной конфе потребуются элементы (или их связь), которых в нашей системе вообще нет? В общем у меня пока путанница по поводу "интерфесных таблиц" :)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273037
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Егоров Александр,
насчет интерфейсных таблиц...
внешняя программа выполняет выгрузку требуемых данных в таблицы на SQL сервере. 1С при помощи обработки читает данные из этих таблиц, создает необходимые объекты в своей БД, выполняет их проведение... Это просто шлюз о структуре которого договариваются две стороны. При массовых загрузках, имхо, более живучий вариант, чем общение с объектами 1С через OLE
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273339
Enot5467
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
1С и структура 1С, то же самое, что и SQL и его MDF с LDF файлами. Туда на прямую не пишут не потому что хватает, а потому что это не рекомендуют создатели SQL. Сейчас это табу дошло до того, что многие принимают как должное. Если промежуточный слой SQL быстро пишет, то это не значит, что простым API будет медленнее. Кто не верит, пробуйте.
----------------
Про прямую запись в базу 1С: так же как и с SQL, пишите без проблем. Просто когда встанет вопрос по стоимости сопровождения, поймете, чем чревато. Любое изменение в конфигурации может ненароком разрушить всю базу. К сожалению такие моменты наблюдал лично. Именно по этому настоятельно рекомендую поискать контору, где такой обмен налажен и работает. Просто посмотрите как это обновляется/сопровождается/изменяется.
Ну а по существу:
- Зависимость от платформы (ни кто не знает, что будет со следующим релизом 1С)
- Зависимость от версии SQL
- Зависимость от версии конфигурации
- Сложность разработки разработчиком
- Сложность найти помощника/замену разработчику
В итоге как только подойдет руководитель с архиважным планом по изменению каких-нибудь контрагентов, разработчик от бессилия начинает обвинять 1С. Руководитель смотрит на это пару месяцев и вызывает самый задрипаный франч, что бы тот поставил что-то стандартное
-----------------
Про скорость в 1С: при помощи промежуточного хранилища у меня работает связка баз 1С на одном предприятии. Скорости удовлетворяют на 100% всех. Работают не зависимо от активности сотрудников. Бухи даже не понимают, что есть где-то обмен. Вообще скорость зависит не от 1С (можно и на асме и на С# таких тормозов написать...), а от того кто туда руки прикладывал.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273381
Enot5467
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
Егоров Александр,

К сожалению без проведения часто бывает так, что кодом в 1С тоже что-то предусмотрено (например регистрация изменений или перезапись других объектов), поэтому все отслеживать каждый раз тяжело.
С другой стороны пишите напрямую, кто мешает? Софтпоинт развернулся вон как. Другой вопрос, что в реальности то очень редко у кого получается по нормальному сделать.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273459
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafm,
iscrafmЕгоров Александр,
насчет интерфейсных таблиц...
внешняя программа выполняет выгрузку требуемых данных в таблицы на SQL сервере. 1С при помощи обработки читает данные из этих таблиц, создает необходимые объекты в своей БД, выполняет их проведение... Это просто шлюз о структуре которого договариваются две стороны. При массовых загрузках, имхо, более живучий вариант, чем общение с объектами 1С через OLE

1) В топиках Александра Егорова нигде и не говорится, что OLE механизм используется для общения с объектами 1С (в этом случае действительно тормоза да еще какие). Внимательно читаем топики.
2) Зачем нам нужны какие либо промежуточные таблицы, в которые внешнее приложение грузит данные? А напрямую к этим данным обратится нельзя, без промежуточных таблиц? По моему лишнее.
Промежуточные таблицы имеют смысл для хранения связей объектов база 1 - база 2.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273489
Enot5467
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
vitkhv
Промежуточные таблицы имеют смысл для хранения связей объектов база 1 - база 2.
Не совсем согласен. Когда одна и вторая база в разное время по разному нагружены, тогда необходимо делить нагрузку между ними. Проще всего, если каждая база будет вызывающей. Это как аккумулятор в бесперебойнике, просто промежуточное накопление. Так же, если между насосом и шлангом не предусмотреть рессивер, тогда получается прохождение газа не равномерным. Плюс в такую схему можно запросто вписывать и 3-ю и 4-ю базу. Самый большой плюс, что если одна система меняется, то только её можно переписывать, не затрагивая остальные (хотя это только, если хранилище проработанное до мелочей). Еще из плюсов можно отметить, это упрощение создания универсального механизма обмена. До кучи можно там хранить односторонние данные (база является и источником и приемником).
В принципе все перечисленное можно сделать и без промежуточного, только сложнее все получается на порядок
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273497
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmЕгоров Александр,
насчет интерфейсных таблиц...
внешняя программа выполняет выгрузку требуемых данных в таблицы на SQL сервере. 1С при помощи обработки читает данные из этих таблиц, создает необходимые объекты в своей БД, выполняет их проведение... Это просто шлюз о структуре которого договариваются две стороны. При массовых загрузках, имхо, более живучий вариант, чем общение с объектами 1С через OLE
Будем считать термин "промежуточные таблицы" определен как таблицы связей между БД и, при необходимости, трансформация данных или предстваление их через, например, вьюхи в некий вид, более универсальный для выгрузки в разнообразные конфигурации 1С :) Я практически про это же и писал - таблицы соответствий ID объектов 1С неким представлениям (или напрямую PK) объектов внешней системы. Без этого не обойтись, но это дело лучше поручить либо самой внешней системе, либо сервису обмена. Хранить какие-то внешние связи в 1С - дорогое удовольствие. Соотв. и скорость формирования этих таблиц тогда лежит вне 1С
Но! Речь идет как раз не о массовых загрузках сразу множества документов в 1C, речь идет о множестве передач одного документа, при этом скорость загрузки и проведение - значительно уступает скорости инициализации v77.Application. Собство сервис нужен именно для online-обмена документами с проведением их в 1С. Фактически он нужен просто ради держать загруженную 1Ску. Для синхронизации справочников вполне можно и напрямую писать. Для массовой же загрузки и проведения множества документов сервис конечно же не нужен. И схема там будет именно 1С при помощи обработки читает данные из этих таблиц, создает необходимые объекты в своей БД, выполняет их проведение...
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273512
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Enot5467,

Так я собственно тоже говорю - нужно очень хорошо подумать, прежде чем браться за "прямую запись в таблицы 1С". Просто считаю более актуальным- Зависимость от версии конфигурации
- Сложность найти помощника/замену разработчику
чем - Сложность разработки разработчиком
Для 8.x актуально еще и - Зависимость от платформы (ни кто не знает, что будет со следующим релизом 1С), но в ней получить структуру БД можно хотя бы штатными средствами. Для 7.7 уже все давным-давно устаканено и меняться ничего не будет в связи с прекращением ее развития.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273575
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Enot5467Про прямую запись в базу 1С: так же как и с SQL, пишите без проблем. Просто когда встанет вопрос по стоимости сопровождения, поймете, чем чревато. Любое изменение в конфигурации может ненароком разрушить всю базу. К сожалению такие моменты наблюдал лично.


Ага и изменение прям таки любое может разрушить тебе базу!
имхо очень сильно преувеличенно.
Опять же прошу факты: из-за чего произошло крушение.



Enot5467
Ну а по существу:
- Зависимость от платформы (ни кто не знает, что будет со следующим релизом 1С)

Ага а любые другие виды обмена платформонезависимы?

Enot5467
- Зависимость от версии SQL

Здесь зависимость минимальная.

Enot5467
- Зависимость от версии конфигурации

Оказывает самое сильное влияние на все виды обмена.

Enot5467
- Сложность разработки разработчиком

А что ждать всей бухией пока данные перенесуться,
а потом работать по ночам и по выходным будет ЛЕГЧЕ (дешевле)?

Enot5467
- Сложность найти помощника/замену разработчику


Согласен. Найти 10 вменяемых бухгалтеров легче чем 1 вменяемого разработчика.

Enot5467
В итоге как только подойдет руководитель с архиважным планом по изменению каких-нибудь контрагентов, разработчик от бессилия начинает обвинять 1С.

Разработчики бывают разные. Но а такого, который не свои руки кривые выпрямлять будет, а головой на платформу кивать - гнать надо. И выявлять таких до появления архиважных планов.
ИМХО вопрос качества подбора персонала.

Enot5467
Руководитель смотрит на это пару месяцев и вызывает самый задрипаный франч, что бы тот поставил что-то стандартное.

Мудрость и опыт руководителя была определенна еще на этапе подбора персонала;)
-----------------

Enot5467
Про скорость в 1С: при помощи промежуточного хранилища у меня работает связка баз 1С на одном предприятии. Скорости удовлетворяют на 100% всех. Работают не зависимо от активности сотрудников. Бухи даже не понимают, что есть где-то обмен. Вообще скорость зависит не от 1С (можно и на асме и на С# таких тормозов написать...), а от того кто туда руки прикладывал.

И где здесь:
1) не зависимость от релиза 1С?
2) не зависимость от версии SQL?
3) не зависимость от версии конфигурации 1С?
4) простота в разработке?
5) простота в замене вас на нового разработчика?


И еще уважаемый Enot5467 оцените стоимость приведенных ниже решений:

Считаем, что в абстрактной компании торговых операций очень много, потому как для небольшого количества операций актуальней будут другие средства обмена. В абстрактной компании существует какая либо торговая система на базе 1С или западная (искрафарм учитываем сюда же) или самописка.
Задача иметь актуальную бухгалтерскую и налоговую отчетность на основе данных торговой системы.

Итак с точки зрения трудозотрат в целом для компании будет дешевле - поддерживать актуальные механизмы быстрого обмена (с прямой записью в таблицы) но бухгалтерию иметь стандартную от 1С или поддерживать в актуальности бухгалтерскую подсистему в самописке?

А, что будет дешевле в целом для компании - поддерживать обмен на .XML между западной системой и 1С бухгалтерией или поддерживать обмен на прямых запросах (в том числе с ипользованием промежуточных хранилищ) между этими системами?

Только оценивайте пожалуйста не только стоимость разработки/подержки отделом ИТ. Учитывайте какие буду затраты со стороны смежных отделов использующих решение.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273606
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Егоров АлександрДля массовой же загрузки и проведения множества документов сервис конечно же не нужен. И схема там будет именно 1С при помощи обработки читает данные из этих таблиц, создает необходимые объекты в своей БД, выполняет их проведение...
Александр, да, я только такой вариант рассматривал. Раз в месяц выгружаются данные в бухгалтерию и проводятся.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273615
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhvЗачем нам нужны какие либо промежуточные таблицы, в которые внешнее приложение грузит данные? А напрямую к этим данным обратится нельзя, без промежуточных таблиц? По моему лишнее.

может и можно. я имею ввиду самый простой и незатратный способ. Обратный способ, конечно же, возможен, в теории. Но владелец информации гораздо эффективнее подготовит ее для обработки.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273628
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmЕгоров АлександрДля массовой же загрузки и проведения множества документов сервис конечно же не нужен. И схема там будет именно 1С при помощи обработки читает данные из этих таблиц, создает необходимые объекты в своей БД, выполняет их проведение...
Александр, да, я только такой вариант рассматривал. Раз в месяц выгружаются данные в бухгалтерию и проводятся.
Ну... главное - взаимопонимание достигнуто :) Осталось только дождаться автора топика, чтобы узнать причину необходимости именно онлайнового обмена. :)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273635
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmvitkhvЗачем нам нужны какие либо промежуточные таблицы, в которые внешнее приложение грузит данные? А напрямую к этим данным обратится нельзя, без промежуточных таблиц? По моему лишнее.

может и можно. я имею ввиду самый простой и незатратный способ. Обратный способ, конечно же, возможен, в теории. Но владелец информации гораздо эффективнее подготовит ее для обработки.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273637
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
а если нет возможности что либо изменять в конфигурации владельца информации?
а при наличии возможности, что либо менять надо еще иметь и разработчика чтобы мог что ли бо менять.
т.е. нужен 1С ник, SQL щик и Искрафармщик (Абапер, X++ сник и т.д.).
а без подготовки информации на владельце нужны только 1С ник и SQL щик + профайлер.
При этом 1С ник со знанием SQL гораздо более частое явление - чем 1С ник со знанием Искрафарм(абап, Х++).
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273642
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhv
При этом 1С ник со знанием SQL гораздо более частое явление - чем 1С ник со знанием Искрафарм(абап, Х++).
а зачем нужен 1С-ник со знанием той же Искры? Это "взаимоисключающие" знания (в кавычках, потому что на предприятиях они живут и дружат). Т.е. приложение (часть корпоративной ИС) делается или на 1С или на Искре. Я, лично, сталкиваюсь с 1С по "долгу службы" (точно также как с R3 и другими), но одновременно использовать оба подхода смысла нет, по крайней мере в контексте онлановой интеграции.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273654
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafm,
ну так я и говорю, чтобы готовить информацию на владельце информации, нужен человек который умеет ее готовить.
Поэтому можно и без человека такого обойтись, напрямую долбя таблицы владельца информации.
А если вообще нет возможности готовить данную информацию на владельце?
В обоих случаях нужен только 1С, SQL щик и профайлер.
Хотя к вам это не относится, готовить у вас возможность есть.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273656
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhvа если нет возможности что либо изменять в конфигурации владельца информации?

и такие ситуации бывают. Например, на точке стоит типовая, 1С-ника нет, а забирать с точки данные нужно, причем силами простых пользователей. Ищутся различные способы, но только такие, которые может воспроизвести простой юзер, воспользовавшись простой справкой. Допустим сформировать стандартный XML-файл обмена. Ничего... забираем его и парсим в SQL скрипт для обновления хранилища. Например так . Но это все не он-лайновое взаимодействие. С необходимостью он-лайн не встречался, пока.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273663
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafm,
Я не говорю про онлайн обмен из 1С обратно в Торговую систему.
Я говорю про обмен Торговая система -> 1C.
Нет у тебя доступа к конфигурационным слоям Торговой системы или нет спеца который умеет ее конфигурить, а данные в Бухию грузить надо, что делать будеш?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273665
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhvЯ говорю про обмен Торговая система -> 1C.
Нет у тебя доступа к конфигурационным слоям Торговой системы или нет спеца который умеет ее конфигурить, а данные в Бухию грузить надо, что делать будеш?
заменю бухгалтерский модуль. Серьезно. Или, если нужно, найду спеца.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273668
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhv,

на самом деле такие ситуации маловероятны.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273671
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmvitkhvЯ говорю про обмен Торговая система -> 1C.
Нет у тебя доступа к конфигурационным слоям Торговой системы или нет спеца который умеет ее конфигурить, а данные в Бухию грузить надо, что делать будеш?
заменю бухгалтерский модуль. Серьезно. Или, если нужно, найду спеца.

Вот вот, а если живешь где нибудь в Хабаровске.
На предприятии развернули Западную систему (вторую на весь город), а бухгалтерского модуля к РСБУ к ней вообще нет.Что будеш спецов с Москвы заказывать?

И на какой бухгалтерский модуль ты собираешся 1С менять?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273673
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmС необходимостью он-лайн не встречался, пока.
Я делал возможность получать на КПК результат проведения заявки покупателя в 1С (она была системой оперативного учета). Онлайн был актуален, ибо дефицит товарных запасов при множестве удаленных торговых представителей, едином складе и схеме работы "два профильных ТП - один клиент", приводил к необходимости оперативно изменять заказ при его непроведении.
Собсно, почему и хочется услышать автора топика - в чем необходимость онлайна...
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273674
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhvИ на какой бухгалтерский модуль ты собираешся 1С менять?
разве их мало? На тот же БЭСТ
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273675
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Егоров Александр, хороший пример.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273676
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmvitkhv,

на самом деле такие ситуации маловероятны.

Т.е.маловероятны ситуации когда дешевле иметь одного спеца в лице 1С ника и SQL щика, чем двух в лице 1С ника и искрафармщика (абапера, x++ сника)?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273677
Фотография iscrafm
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhv,

когда невозможно найти поддержку для купленной бухгалтерии.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273680
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmЕгоров Александр, хороший пример.
Ну Александра я лично знаю.
Работали даже вместе :)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273681
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Егоров АлександрiscrafmС необходимостью он-лайн не встречался, пока.
Я делал возможность получать на КПК результат проведения заявки покупателя в 1С (она была системой оперативного учета). Онлайн был актуален, ибо дефицит товарных запасов при множестве удаленных торговых представителей, едином складе и схеме работы "два профильных ТП - один клиент", приводил к необходимости оперативно изменять заказ при его непроведении.
Собсно, почему и хочется услышать автора топика - в чем необходимость онлайна...

/topic/478881&hl=
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273683
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
iscrafmvitkhv,

когда невозможно найти поддержку для купленной бухгалтерии.

Это случай не интересный.
Вот когда найти поддержку Торговой системы невозможно или очень дорого.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273687
vitkhv
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Вообще не факт, что автору нужен именно онлайн.
Помоему это мы в онлайн свернули, так сказать между собой.
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273691
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhv,

Смотри, Виталь... Забанят за пеар :)
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273694
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhv/topic/478881&hl= Не похоже на BizTalk. Ему больше нужно извлекать данные из 1С, чем записывать в нее. Тем более, он сам сервис - противоречит DinDimПриложение распределенное. Клиентов море. Всего один раз на каждом клиенте?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36273696
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
vitkhvПомоему это мы в онлайн свернули, так сказать между собой.
DinDimЖелаемое условие - on-line обмен.
Собственно чего и ждем от автора - зачем именно онлайн при обмене с 1С?
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36274019
Enot5467
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Гость
От себя про оперативный учет:
1. Многие бухи думают только планом счетов, поэтому оперативная информация архи как им нужна в бухии.
2. Документ на оплату бьют в торговле, а деньги в кассу берут из бухии.
Обе эти ситуации делал через промежуточное хранилище. Да, месяц потратил на универсальный механизм по связи разных баз. Результат - использовать может кто угодно, лишь бы знаком был со спецификой предприятия.
Объем передаваемых документов при перепроведении очень большой и тормозится только временем проведения/записи в обеих базах. Кстати, при записи многих объектов обрабатывается масса дополнительного кода. Например, при создании контрагента, необходимо создавать основной договор, валюты к нему, регистрация изменений, назначения кода (по памяти пока больше не вспомню), так что если это все дублировать чем-то сторонним то боюсь это по крайней мере глупо.
А вообще многим лучше попробовать самому и набить шишки, чем слушать кого-то. В начале карьеры сам пытался не смотреть "как работает у других"
...
Рейтинг: 0 / 0
Обмен с внешним приложением
    #36274116
Егоров Александр
Скрыть профиль Поместить в игнор-лист Сообщения автора в теме
Участник
Enot54671. Многие бухи думают только планом счетов, поэтому оперативная информация архи как им нужна в бухии.
Оперативная информация в бухгалтерии? Не удержусь и спрошу - а зачем?.
Не проще ли в оперативный учет добавить план счетов и формирование проводок? Будет все-равно быстрее проводиться, ибо вместо онлайнового переноса и проведения во внешней системе, останется только проведение в своей.
Enot54672. Документ на оплату бьют в торговле, а деньги в кассу берут из бухии.
Что мешает бить "деньги в кассу" тоже в торговле? А переносить уже полностью закрытый оперативный период? И сам перенос проще, и можно это делать ночью, не грузя в оперативное систему лишней синхронизацией?
C учетом
Enot5467Объем передаваемых документов при перепроведении очень большой и тормозится только временем проведения/записи в обеих базах. я понимаю, что у вас перепроведение документов в оперативном учете (восстановление последовательности?), которая происходит в двух системах одновременно? При том, что перепроведение торговли и уже потом перенос месяца в бухию пройдет существенно быстрее, ибо торговля не будет тормозиться проведение бухгалтерии, а бухгалтерия получит читсую последовательноть, коорую вообще не надо будет перепроводить?
Enot5467Кстати, при записи многих объектов обрабатывается масса дополнительного кода. Например, при создании контрагента, необходимо создавать основной договор, валюты к нему, регистрация изменений, назначения кода (по памяти пока больше не вспомню), так что если это все дублировать чем-то сторонним то боюсь это по крайней мере глупо.
В бухии 1С это реализовано в методах формы (говорю сейчас только про 77). Соотв никакая "внешняя" обработка не имеет доступ к этому коду. Либо курочить конфу и добавлять в формы справочников эмуляцию интерактивной записи, либо таки дублировать код в своей обработке. Поскольку конфу бухгалтерии трогать очень не хочется - пришлось дублировать код. Ну а раз дублировать, то тогда уж можно и "прямой записью". Я сделал так - в бухгалтерии запрещено на уровне прав доступов создавать объекты справочников, получаемых из оперативного учета. Такие справочники синхронизируются online, sql-хранимкой, с учетом всех "дочерних" объектов. Хочется ж скорости и оперативности :) В 8-ке с этим получше, там есть события объектов и встроенный в конфигурацию код будет работать при записи объектов из внешней обработки, но я пока с 8-кой серьезных дел не имел.
Enot5467А вообще многим лучше попробовать самому и набить шишки, чем слушать кого-то. В начале карьеры сам пытался не смотреть "как работает у других"Иногда прежде чем нырнуть куда-то, хочется спросить кого-нить, как там водичка и дно :) Хотя соглашусь - пробовать самому интересно действительно в начале карьеры, когда и время есть, и к серьезным проектам никто не пускает. :)
...
Рейтинг: 0 / 0
82 сообщений из 82, показаны все 4 страниц
Форумы / [игнор отключен] [закрыт для гостей] / Обмен с внешним приложением
Найденые пользователи ...
Разблокировать пользователей ...
Читали форум (0):
Пользователи онлайн (0):
x
x
Закрыть


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