Интеграция SAP и 1С8

Публикация № 514550

Разработка - Системная интеграция - Внешние источники данных

Обмен SAP 1C8 RFC интеграция загрузка

Интеграция SAP и 1С8 может быть осуществлена через многочисленные технологии, предлагаемые SAP. Но все они в конечном счете делятся на две группы: 1) обращение из SAP к 1С 2) обращение 1С к SAP Я расскажу о каждой из этих групп.

Обращение из SAP к 1С.

К этой группе следует отнести непосредственное подключение из SAP к базе 1С, расположенной на SQL сервере. Я нашел единственно простое решение - непосредственно на сервере SAP работать с наполнением базы 1С минуя всяких посредников (включая платформу 1С). Вот пример загрузки справочника "Банки" из 1С в таблицу базы данных SAP:

REPORT  YTURE2.

"открываем соединение
EXEC SQL.
    CONNECT TO 'NSI' AS 'V'
ENDEXEC.

IF sy-subrc = 0.
    "ставим текущее соединение
    EXEC SQL.
      SET CONNECTION 'V'
    ENDEXEC.

    TABLES YBANK.
    "объявляем запись, которая будет принимать значения из курсора
    data: line like YBANK,
          bank like YBANK.

    "открываем курсор
    EXEC SQL.
       OPEN dbcur FOR SELECT
                          t.ссылка,
                          t.версия,
                          t.ПометкаУдаления,
                          t.код,
                          t.Наименование,
                          t.ГоловнойБанк,
                          t.КоррСчет
                      FROM RБанкиID as t
    ENDEXEC.


    DO.
       "извлекаем из курсора очередной набор
       EXEC SQL.
         FETCH NEXT dbcur INTO :line
       ENDEXEC.

       "убеждаемся, что получили из курсора данные
       IF sy-subrc <> 0.
         EXIT.
       ELSE.
         "найдем банк
         select SINGLE * into bank from YBANK where ref = line-ref.
         if sy-SUBRC = 0 and bank-VER = line-ver.
           CONTINUE. "пропускаем, т.к. не изменилось
         elseif sy-SUBRC = 0.
            UPDATE YBANK from LINE. "обновляем
         else.
            INSERT YBANK from LINE. "добавляем
         endif.

         "просто печатаем полученные данные
         select SINGLE * into bank from YBANK where ref = line-ref.
         if sy-SUBRC = 0.
           WRITE: / BANK-ref, BANK-ver, BANK-mark, BANK-code, BANK-DESCR, BANK-MAJOR_BANK, BANK-COR_ACCOUNT.
         ENDIF.

       ENDIF.
    ENDDO.

    "закрываем курсор
     EXEC SQL.
       CLOSE dbcur
     ENDEXEC.

     "закрываем соединение
      EXEC SQL.
        DISCONNECT 'V'
      ENDEXEC.
ENDIF.

В комментариях я отметил основные моменты (кто-то приятно ужаснется, впервые увидев этот процедурный язык). Не печальтесь, если что-то останется непонятно сразу. Здесь просто имитация работы с курсором sql. Код отдаленно напомнит Вам все, с чем Вы когда-то сталкивались и t-sql, и foxpro, и дельфи. Это просто букет воспоминаний.

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

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

 

Здесь следует обратить внимание на тип подключаемой базы (DBMS) и строку соединения. Из-за путаницы терминов и подходов со строкой соединения с первого раза справляются не многие. Обратите внимание, что инстанс (экземпляр) сервера SQL указан через обратный слеш, а не тире. Проверить проблемы соединения можно в транзакции ST22, где будет детально описаны все проблемы (увы, здесь не всплывает окно сообщений, как в 1С). Файл библиотеки dbmssslib.dll можно скачать с маркета (http://scn.sap.com/thread/1345635) или извлечь из архива (пач ядра, для MSSQL). Архив с расширением sar или car можно открыть программой SAPCAR.EXE с параметрами -xvf После извлечения нужной библиотеки, ее можно просто скопировать по пути, указанном в ST22.

Я не нашел другого более простого и быстро реализуемого способа. Но из SAP можно работать и с веб-сервисами 1С. На первом итапе перед Вами будет стоять "дикая" потребность быстрого обмена, а веб-сервисы вообще не обеспечат требуемую скорость.

Обращение 1С к SAP.

Этот раздел сложен скорее своим многообразием выбора. Перед Вами и прямое обращение к базе данных SAP (как мы это сделали с 1С), и шина SAP PI (интеграционная шина), и Web AS (собственный web-сервер), и пр. Выбор велик, а времени во всем этом разбираться нет. По правде говоря, обидно будет затратить усилия и разочароваться в результате.

Давайте проведем аналогию с 1С. 1С умеет выгружать файлики и загружать их. SAP не может не уметь делать так же. Но разве это современно? 1С умеет отправлять почтовые сообщения, SAP и здесь не отстает. Но разве это быстро? 1С умеет работать с web-сервисами! О да! А как же SAP? 

SAP предлагает что-то большое и с первого взгляда невразумительно в теме web-сервисов. Когда Вы затратите свое дорогое время, внимательно и осторожно изучите этот вопрос, то вместе с чувством огромной проделанной работы и сорванных сроков в вашей душе поселится разочарование. Впрочем, если Вы сеньор программист с/с++/java и набрались в жизни много знаний о популярных и современных технологиях, то сможете рассуждать за одним столом с консультантами SAP о программировании, культуре бизнеса, политике и, конечно, симпатичных девушках. 

В основе всех известных мне сегодня технологиях доступа из 1С к SAP лежит абревиатура RFC. RFC - это удаленный вызов функций. Это чем-то напоминает web-сервисы 1С, только нет посредника и клиент непосредственно вызывает функциональные модули. Это работает непосредственно через сокеты (3300 tcp порт на сервере). Формат обмена спрятан в коммерческой библиотеке, которая предлагает API-интерфейс (смотрите детали в SDK RFC). Реализация предложена на языке C. Взгляните на простой пример. 

Это строка соединения:

Это подключение:

Это вызов удаленной функции по имени:

И закрываем соединение:

Просто и понятно, если Вы ежедневно пишете программы на с/с++. А если нет? Для таких случаев открывается целый спектор готовых решений, который я немного и упомянул выше. В первую очередь опытные консультанты обступят Вас вокруг с уже готовыми ценами за услуги. Смутное чувство нереальности происходящего не оставит Вас, пока они не уйдут. Но с их уходом останется только пустота (станное чувство, которое не возникает после разговора со специалистами). Нет, у Вас, конечно, останется понимание о размере счетов, которые нужно оплатить, но вот с пониманием и знанием следующих направлений развития все плачевно (помните продавцов в магазине?)

Я скажу Вам прямо без утайки. Если Вы овладеете RFC, то весь довесок или букет интеграционных решений станет Вам не нужен. Взгляните на простой алгоритм вызова из 1С удаленной функции SAP:

&НаКлиенте
Процедура ПриОткрытии(Отказ)
	res=ПодключитьВнешнююКомпоненту("C:\Users\etyurin\Documents\Visual Studio 2013\ProjectsCPP\sap-rfc\Release\sap-rfc.dll", "VK", ТипВнешнейКомпоненты.Native);
	ДемоКомп = Новый("AddIn.VK.SapRfc");
	ДемоКомп.СтрокаСоединения="TYPE=3 CLIENT=1 USER=***** PASSWD=**** LANG=E ASHOST=***** SYSNR=00 USE_SAPGUI=0";
	Если не ДемоКомп.УстановитьСоединение() тогда
		Сообщить(ДемоКомп.ПоследняяОшибка());
	иначе		
		ДемоКомп.ИмяФункции="YTURE_FM";
		
		Строка1="WERRwqedqwdeqwd 1123123 ывапыРОРОР";
		ДемоКомп.ДобавитьПараметр("exporting","REQUTEXT","TYPC",Строка1,СтрДлина(Строка1));
		ДемоКомп.ДобавитьПараметр("importing","ECHOTEXT","TYPC","",1024);
		ДемоКомп.ДобавитьПараметр("importing","RESPTEXT","TYPC","",1024);
		
		//ДемоКомп.УдалитьПараметр("ECHOTEXT");
		//ДемоКомп.ДобавитьПараметр("importing","ECHOTEXT","TYPC","",1024);
		//res=ДемоКомп.КоличествоПараметров("importing");
		
		Если не ДемоКомп.Вызвать() тогда
			Сообщить(ДемоКомп.ПоследняяОшибка());
		Иначе
			res1=ДемоКомп.ПолучитьПараметр("ECHOTEXT");
			res2=ДемоКомп.ПолучитьПараметр("RESPTEXT");
			ДемоКомп.ОчиститьВсеПараметры();
		КонецЕсли;
		ДемоКомп.ЗакрытьСоединение();
	КонецЕсли;	
	
КонецПроцедуры

Удаленная функция представляет из себя функциональный модуль (в примере это YTURE_FM). Функция принимает один строковый параметр с именем REQUTEXT и возвращает два строковых параметра ECHOTEXT и RESPTEXT (это как передать в функцию три параметра, два из которых она изменит).

Функциональный модуль можно создать в транзакции SE37. Обратите внимание на отметку удаленного вызова:

 Входящие параметры:

Возвращаемые параметры:

А вот и обработка на сервере SAP переданных параметров:

Здесь в коде нет заморочек. Это просто ЭХО, т.е. возвращается то, что передали (параметр с именем RESPTEXT дополнительно заполняется сведениями о подключении).

Имея возможность подключиться из 1С непосредственно к серверу SAP, минуя многочисленных посредников, Вы бережете время и получаете максимальную скорость. Чтобы описание не выглядело голословно, я приложил релиз компоненты для 1С. Однако надеюсь, что я убедил Вас в правильности использовать и изучать сразу RFC и не разбрасывать своё время и усилия на зоопарк вокруг интеграции. В конечном счете Вы сбережете и фонд оплаты труда, т.к. зверинец весьма прожорлив.  

Скачать файлы

Наименование Файл Версия Размер
Компjнента

.7z 67,48Kb
8
.7z 67,48Kb 8 Скачать

Специальные предложения

Комментарии
В избранное Подписаться на ответы Сортировка: Древо развёрнутое
Свернуть все
1. aspirator23 453 15.04.16 17:51 Сейчас в теме
Тоже использовал RFC. Правда сами функции писали программисты sap. Только согласовывал с ними передаваемые параметры.
2. Prometeus2011 110 18.04.16 17:34 Сейчас в теме
Тема, несомненно, интересная. Однако, SAP достаточно редкая птица на российских просторах учетных систем. Думаю, если-бы были задачи, то нашлись-бы и исполнители. Я, например. И ВК написать для обмена - не сильно большая проблема, в общем-то. Но в целях самопознания это мутить - полный эксгибиционизм. Короче, нужна конкретная задача.
3. comol 4560 19.04.16 11:15 Сейчас в теме
Как-то всё-таки не православно забить на XI/PI и "пилить" интеграцию "дедовским способом"....
4. ture 580 19.04.16 18:41 Сейчас в теме
(3) comol, в начале внедрения остро стоит вопрос перемещения большого количества данных в SAP (поэтому прямое обращение к вьюхам 1С). А вот безнаказанно ходить к данным в сап как в 1С еще нельзя (поэтому rfc). Прочие интеграционные продукты (к примеру, которые Вы упомянули) работают через rfc, но вводят дополнительное звено - продукт написанный на java. Пока остро стоит потребность в движение большого количества информации, java будет слабым звеном (очень медленно и много ресурсов отнимает).
5. Makushimo 157 20.04.16 07:36 Сейчас в теме
а мне понравился настрой автора.
ничего не понятно, конечно с наскоку, но настроение как ни странно не испортилось )))
плюсую
корум; Saint13; +2 Ответить
6. maksip 17 04.05.16 16:27 Сейчас в теме
Мне кажется не совсем уместным данными из таблиц БД 1с делать напрямую загрузку в БД SAP и наоборот. При обновлении платформы 1с может измениться структура хранения таблиц. И если со справочником банков это ещё и может пройдет, то с регистрами или даже документами возможно вся загрузка возможно сломается. Плюс ко всему нет возможности использовать бизнес логику 1с,а она при обновлении конфигурации также может меняться. К тому же встает вопрос о блокировках, как себя поведет сервер БД и сервер приложений 1с при одновременном использовании таблиц и 1с и обработкой БД.
7. ture 580 04.05.16 16:44 Сейчас в теме
(6) maksip,
При обновлении платформы 1с может измениться структура хранения таблиц.
так и будет, если удалять реквизиты, к примеру.
Плюс ко всему нет возможности использовать бизнес логику 1с
и это верно(что меня радует однозначно)
К тому же встает вопрос о блокировках
еще как может встать.

Вьюхи переделываем после обновлений конфигурации, сломанные загрузки чиним (иногда даже заранее), логика 1С не пашет и "владельцы" базы ноят, что их не спросили, а им хотелось бы подмазаться, ну и конечно блокировок нет, потому что грязное чтение во вьюхах (это как грязные танцы). Загрузка периодическая (10 мин), т..е. данные выправляются по версии (можно добавлять задержку в 1-2 мин, чтоб танцев не было, но так уже не зажигает).
8. maksip 17 04.05.16 17:14 Сейчас в теме
(7) ture, (7) ture, Тогда согласен. В этом случае решение вполне подходит
9. Трактор 1210 05.05.16 12:13 Сейчас в теме
Хорошее решение для тех у кого и сап и 1С под рукой. Возможно даже лучшее. Ибо мой опыт работы с сапёрами говорит о море непонимания при обсуждении интерфейсов. Я несколько раз делал обмен с САПом. Всегда это был обмен файлами. А файлы у САПа сильно замусорены. На три значащих поля двадцать не имеющих к обмену отношения.
10. ture 580 23.06.16 11:11 Сейчас в теме
Если кто изощренный никрофил, то ему понравится пара примеров от мастера.
Здесь процедурная модель:
REPORT  zfirst_program03.


TABLES sflight.

"внутренняя таблица
DATA: gt_sflight TYPE TABLE OF sflight.

"объявление параметров отбора
SELECT-OPTIONS: so_car FOR sflight-carrid,
                so_con FOR sflight-connid,
                so_fld FOR sflight-fldate.

START-OF-SELECTION.

  SELECT
    *
  INTO TABLE gt_sflight
  FROM
    sflight
  WHERE
    carrid  IN so_car
    AND  connid  IN so_con
    AND  fldate  IN so_fld.

  IF sy-subrc <> 0.
    "сообщение в строке состояния
    MESSAGE 'Нету' TYPE 'S'.
    RETURN. "выход из программного модуля
  ENDIF.

  IF LINES( gt_sflight ) = 8. "количество строк в таблице
    DATA n TYPE i.
    n = LINES( gt_sflight ).
    WRITE: / n.
  ENDIF.

  DATA: lt_fcat TYPE lvc_t_fcat.
  CALL FUNCTION 'LVC_FIELDCATALOG_MERGE'
   EXPORTING
*     I_BUFFER_ACTIVE              =
     i_structure_name             = 'SFLIGHT' "считываем метаданные именно этой таблицы
*     I_CLIENT_NEVER_DISPLAY       = 'X'
*     I_BYPASSING_BUFFER           =
*     I_INTERNAL_TABNAME           =
   CHANGING
      ct_fieldcat                  = lt_fcat  "и сохраняем МЕТАДАННЫЕ в эту внутреннюю таблицу
   EXCEPTIONS
     inconsistent_interface       = 1
     program_error                = 2
     OTHERS                       = 3.

  IF sy-subrc <> 0.
    CASE sy-subrc.
      WHEN 1.
      WHEN 2.
        MESSAGE ID sy-msgid TYPE sy-msgty NUMBER sy-msgno
        WITH sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
      WHEN OTHERS.
    ENDCASE.
  ENDIF.

  DATA: ls_fcat LIKE LINE OF lt_fcat.
  ls_fcat-do_sum = 'X'.

  MODIFY lt_fcat FROM ls_fcat
  TRANSPORTING do_sum  "меняем только одно поле во внутренней таблице на основе структуры
  WHERE fieldname = 'PAYMENTSUM' OR fieldname = 'PRICE'.

  DATA: ls_layout TYPE lvc_s_layo.
  "делаем зебру в списке
  ls_layout-zebra = 'X'.
  "минимальная ширина колонок
  ls_layout-cwidth_opt = 'X'.

  "ls_layout-edit = 'X'.

  CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY_LVC'
   EXPORTING
*     I_INTERFACE_CHECK                 = ' '
*     I_BYPASSING_BUFFER                =
*     I_BUFFER_ACTIVE                   =
     i_callback_program                = sy-repid
*     I_CALLBACK_PF_STATUS_SET          = ' '
     i_callback_user_command           = 'ZNYP'
*     I_CALLBACK_TOP_OF_PAGE            = ' '
*     I_CALLBACK_HTML_TOP_OF_PAGE       = ' '
*     I_CALLBACK_HTML_END_OF_LIST       = ' '
*     I_STRUCTURE_NAME                  =
*     I_BACKGROUND_ID                   = ' '
*     I_GRID_TITLE                      =
*     I_GRID_SETTINGS                   =
     is_layout_lvc                     = ls_layout
     it_fieldcat_lvc                   = lt_fcat "передаем метаданные
*     IT_EXCLUDING                      =
*     IT_SPECIAL_GROUPS_LVC             =
*     IT_SORT_LVC                       =
*     IT_FILTER_LVC                     =
*     IT_HYPERLINK                      =
*     IS_SEL_HIDE                       =
*     I_DEFAULT                         = 'X'
*     I_SAVE                            = ' '
*     IS_VARIANT                        =
*     IT_EVENTS                         =
*     IT_EVENT_EXIT                     =
*     IS_PRINT_LVC                      =
*     IS_REPREP_ID_LVC                  =
*     I_SCREEN_START_COLUMN             = 0
*     I_SCREEN_START_LINE               = 0
*     I_SCREEN_END_COLUMN               = 0
*     I_SCREEN_END_LINE                 = 0
*     I_HTML_HEIGHT_TOP                 =
*     I_HTML_HEIGHT_END                 =
*     IT_ALV_GRAPHICS                   =
*     IT_EXCEPT_QINFO_LVC               =
*     IR_SALV_FULLSCREEN_ADAPTER        =
*   IMPORTING
*     E_EXIT_CAUSED_BY_CALLER           =
*     ES_EXIT_CAUSED_BY_USER            =
    TABLES
      t_outtab                          = gt_sflight "передаем сами данные
*   EXCEPTIONS
*     PROGRAM_ERROR                     = 1
*     OTHERS                            = 2
            .
  IF sy-subrc <> 0.
* MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
*         WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
  ENDIF.

*&---------------------------------------------------------------------*
*&      Form  my_CALLBACK_PROGRAM
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
  TYPE-POOLS slis.
*&---------------------------------------------------------------------*
*&      Form  zmy_callback
*&---------------------------------------------------------------------*
*       text
*----------------------------------------------------------------------*
*      -->R_UCOMM      text
*      -->LS_SELFIELD  text
*----------------------------------------------------------------------*
FORM ZNYP USING r_ucomm LIKE sy-ucomm
                        ls_selfield TYPE slis_selfield.
  CASE r_ucomm.
    WHEN '&IC1'. "double clik
      MESSAGE 'Пупс' TYPE 'S'.
  ENDCASE.

ENDFORM.                    "my_callback_program
Показать


А здесь объектная:
REPORT  zthrid_program_v3.

*----------------------------------------------------------------------*
*       CLASS lcl_handle_events DEFINITION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS my_handle_events DEFINITION.
  PUBLIC SECTION.
    METHODS:
      on_double_click FOR EVENT double_click OF cl_salv_events_table
        IMPORTING row column.
ENDCLASS.                    "lcl_handle_events DEFINITION

TABLES sflight.
DATA: lt_sflight TYPE TABLE OF sflight.

SELECT-OPTIONS: so_car FOR sflight-carrid,
                so_con FOR sflight-connid,
                so_fld FOR sflight-fldate.


START-OF-SELECTION.
  "заполняем внутреннюю таблицу
  SELECT
    *
  INTO TABLE lt_sflight
  FROM  sflight
         WHERE  carrid  IN so_car
         AND    connid  IN so_con
         AND    fldate  IN so_fld.

  DATA cls TYPE REF TO cl_salv_table.

*  TRY.
  cl_salv_table=>factory(
*    EXPORTING
*      list_display   = IF_SALV_C_BOOL_SAP=>FALSE
*      r_container    =
*      container_name =
  IMPORTING
    r_salv_table   = cls
  CHANGING
    t_table        = lt_sflight
    ).
*   CATCH cx_salv_msg .
*  ENDTRY.

  "настройка внешнего вида
  DATA cls_set TYPE REF TO cl_salv_display_settings.
  cls_set = cls->get_display_settings( ).
  "зебра
  cls_set->set_striped_pattern( 'X' ).
  "заголовок
  cls_set->set_list_header( 'Ну-у, пипец.' ).

  "узкие колонки
  DATA cols TYPE REF TO cl_salv_columns_table.
  cols = cls->get_columns( ).
  cols->set_optimize( 'X' ).

  "сортировка
  DATA lr_sorts TYPE REF TO cl_salv_sorts.
  lr_sorts = cls->get_sorts( ).
  lr_sorts->add_sort( EXPORTING columnname = 'CARRID'
                                       position   = '1'
                                       sequence   = '1' "направление сортировки 1(возраст) и 2(убыв)
                                       subtotal   = ' ' ).

  "агрегатные функции
  DATA aggrs TYPE REF TO cl_salv_aggregations.
  aggrs = cls->get_aggregations( ).
  aggrs->add_aggregation(
          EXPORTING
            columnname  = 'PRICE'
            aggregation = if_salv_c_aggregation=>total "выбираем сумму по колонке
         ).
  aggrs->add_aggregation(
          EXPORTING
            columnname  = 'PAYMENTSUM'
            aggregation = if_salv_c_aggregation=>average "выбираем среднее по колонке
         ).
  "если итоги надо сверху
  "aggrs->set_aggregation_before_items( ).

  "настраиваем обработчики событий класса
  DATA events TYPE REF TO cl_salv_events_table.
  events = cls->get_event( ).
  DATA even TYPE REF TO my_handle_events.
  CREATE OBJECT even.
  SET HANDLER even->on_double_click FOR events.

  "отображение данных таблицы
  cls->display( ).

*----------------------------------------------------------------------*
*       CLASS lcl_handle_events IMPLEMENTATION
*----------------------------------------------------------------------*
*
*----------------------------------------------------------------------*
CLASS my_handle_events IMPLEMENTATION.
  METHOD on_double_click.
    MESSAGE 'во блин хрень то' TYPE 'I'. " row column .
  ENDMETHOD.                    "on_double_click
ENDCLASS.                    "lcl_handle_events IMPLEMENTATION
Показать


11. ture 580 19.09.16 11:14 Сейчас в теме
Работа с локальным текстовичком:
REPORT z_file_client_eturin.

PARAMETERS: p_file  TYPE text80  OBLIGATORY,  " filename-fileintern
            l_write AS CHECKBOX.


AT SELECTION-SCREEN ON VALUE-REQUEST FOR p_file.

  DATA: filename TYPE string,
        path     TYPE string,
        fullpath TYPE string.
  IF l_write = abap_true.
    CALL METHOD cl_gui_frontend_services=>file_save_dialog
      EXPORTING
*       window_title      =
        default_extension = 'txt'
*       default_file_name =
*       with_encoding     =
*       file_filter       =
*       initial_directory =
*       prompt_on_overwrite       = 'X'
      CHANGING
        filename          = filename
        path              = path
        fullpath          = fullpath
*       user_action       =
*       file_encoding     =
*   EXCEPTIONS
*       cntl_error        = 1
*       error_no_gui      = 2
*       not_supported_by_gui      = 3
*       invalid_default_file_name = 4
*       others            = 5
      .
    IF sy-subrc <> 0.
*  Implement suitable error handling here
    ENDIF.
    p_file = fullpath.
  ELSE.
    DATA: file_table TYPE filetable,
          rc         TYPE i.

       CALL METHOD cl_gui_frontend_services=>file_open_dialog
         EXPORTING
           window_title            = 'Enter file'
*    default_extension       =
*    default_filename        =
*    file_filter             =
*    with_encoding           =
*    initial_directory       =
*    multiselection          =
         CHANGING
           file_table              = file_table
           rc                      = rc
*    user_action             =
*    file_encoding           =
*  EXCEPTIONS
*    file_open_dialog_failed = 1
*    cntl_error              = 2
*    error_no_gui            = 3
*    not_supported_by_gui    = 4
*    others                  = 5
          .
    IF sy-subrc <> 0.
* Implement suitable error handling here
    ENDIF.

    p_file = FILE_TABLE[ 1 ]-FILENAME.


  ENDIF.


START-OF-SELECTION.
  DATA: lt_data    TYPE TABLE OF text100,
        l_filename TYPE string.

  l_filename = p_file.
  IF l_write = abap_true.
    DO 3 TIMES.
      APPEND INITIAL LINE TO lt_data ASSIGNING FIELD-SYMBOL(<line>).
      <line> = |херня{ sy-index }. | && p_file.
    ENDDO.

    CALL METHOD cl_gui_frontend_services=>gui_download
      EXPORTING
*       bin_filesize              =
        filename = l_filename
*       filetype = 'ASC'
*       append   = SPACE
*       write_field_separator     = SPACE
*       header   = '00'
*       trunc_trailing_blanks     = SPACE
*       write_lf = 'X'
*       col_select                = SPACE
*       col_select_mask           = SPACE
*       dat_mode = SPACE
*       confirm_overwrite         = SPACE
*       no_auth_check             = SPACE
*       codepage = SPACE
*       ignore_cerr               = ABAP_TRUE
*       replacement               = '#'
*       write_bom                 = SPACE
*       trunc_trailing_blanks_eol = 'X'
*       wk1_n_format              = SPACE
*       wk1_n_size                = SPACE
*       wk1_t_format              = SPACE
*       wk1_t_size                = SPACE
*       show_transfer_status      = 'X'
*       fieldnames                =
*       write_lf_after_last_line  = 'X'
*       virus_scan_profile        = '/SCET/GUI_DOWNLOAD'
*  IMPORTING
*       filelength                =
      CHANGING
        data_tab = lt_data
*  EXCEPTIONS
*       file_write_error          = 1
*       no_batch = 2
*       gui_refuse_filetransfer   = 3
*       invalid_type              = 4
*       no_authority              = 5
*       unknown_error             = 6
*       header_not_allowed        = 7
*       separator_not_allowed     = 8
*       filesize_not_allowed      = 9
*       header_too_long           = 10
*       dp_error_create           = 11
*       dp_error_send             = 12
*       dp_error_write            = 13
*       unknown_dp_error          = 14
*       access_denied             = 15
*       dp_out_of_memory          = 16
*       disk_full                 = 17
*       dp_timeout                = 18
*       file_not_found            = 19
*       dataprovider_exception    = 20
*       control_flush_error       = 21
*       not_supported_by_gui      = 22
*       error_no_gui              = 23
*       others   = 24
      .
    IF sy-subrc <> 0.
* Implement suitable error handling here
    ENDIF.

  ELSE.


    CALL METHOD cl_gui_frontend_services=>gui_upload
        EXPORTING
          filename                =  l_filename
*          filetype                = 'ASC'
*          has_field_separator     = SPACE
*          header_length           = 0
*          read_by_line            = 'X'
*          dat_mode                = SPACE
*          codepage                = SPACE
*          ignore_cerr             = ABAP_TRUE
*          replacement             = '#'
*          virus_scan_profile      =
*        IMPORTING
*          filelength              =
*          header                  =
      CHANGING
        data_tab = lt_data
*       isscanperformed         = SPACE
*        EXCEPTIONS
*       file_open_error         = 1
*       file_read_error         = 2
*       no_batch = 3
*       gui_refuse_filetransfer = 4
*       invalid_type            = 5
*       no_authority            = 6
*       unknown_error           = 7
*       bad_data_format         = 8
*       header_not_allowed      = 9
*       separator_not_allowed   = 10
*       header_too_long         = 11
*       unknown_dp_error        = 12
*       access_denied           = 13
*       dp_out_of_memory        = 14
*       disk_full               = 15
*       dp_timeout              = 16
*       not_supported_by_gui    = 17
*       error_no_gui            = 18
*       others   = 19
      .
    IF sy-subrc <> 0.
*       Implement suitable error handling here
    ENDIF.

  ENDIF.
Показать
12. ture 580 19.09.16 11:15 Сейчас в теме
Чтение логических и физических файлов:
*&---------------------------------------------------------------------*
*& Report  Z_LOGIC_FILE_SERVER_ETURIN
*&
*&---------------------------------------------------------------------*
*&      
*&
*&---------------------------------------------------------------------*
REPORT z_logic_file_server_eturin.
 
PARAMETERS p_lfile TYPE fileintern OBLIGATORY.
PARAMETERS p_write AS CHECKBOX.
 
START-OF-SELECTION.
  DATA: l_file_name TYPE text100.
  CALL FUNCTION 'FILE_GET_NAME'
    EXPORTING
*     CLIENT           = SY-MANDT
      logical_filename = p_lfile
*     OPERATING_SYSTEM = SY-OPSYS
      parameter_1      = 'PARAM1'
      parameter_2      = 'PARAM2'
      parameter_3      = 'PARAM3'
*     USE_PRESENTATION_SERVER       = ' '
*     WITH_FILE_EXTENSION           = ' '
*     USE_BUFFER       = ' '
*     ELEMINATE_BLANKS = 'X'
*     INCLUDING_DIR    = ' '
    IMPORTING
*     EMERGENCY_FLAG   =
*     FILE_FORMAT      =
      file_name        = l_file_name
* EXCEPTIONS
*     FILE_NOT_FOUND   = 1
*     OTHERS           = 2
    .
  IF sy-subrc <> 0.
* Implement suitable error handling here
  ENDIF.
 
  TRY.
      DATA: l_line    TYPE text100,
            l_endfile TYPE abap_bool.
      IF p_write = abap_on.
        OPEN DATASET l_file_name FOR OUTPUT IN TEXT MODE ENCODING UTF-8.
 
        DO 3 TIMES.
          TRANSFER l_file_name TO l_file_name.
        ENDDO.
      ELSE.
        OPEN DATASET l_file_name FOR INPUT IN TEXT MODE ENCODING UTF-8.
        GET DATASET l_file_name ATTRIBUTES DATA(l_attr).
        WHILE l_endfile = abap_off.
          READ DATASET l_file_name INTO l_line.
          WRITE : / l_line.
          IF sy-subrc NE 0.
            l_endfile = abap_on.
 
          ENDIF.
        ENDWHILE.
      ENDIF.
 
      CLOSE DATASET l_file_name.
    CATCH cx_sy_file_access_error INTO DATA(lo_ex).
      WRITE: / lo_ex->get_text( ).
 
  ENDTRY.
Показать
13. user642695_crocus.vladikina 27.06.19 08:02 Сейчас в теме
15. ture 580 27.06.19 09:53 Сейчас в теме
(13)
(14)
SAP -это монстр, который очень требователен к ресурсам. Если найдете дистрибутив, то столкнетесь с требованиями к железу. Поставить можно на любой хлам, но ворочиться будет медленно. Продукт нацелен на кошельки, которые выходят за рамки приличия и доход программиста (даже 1С).

Внутри язык ABAP для приложения. SAP - это то что станет с сообществом 1С, когда желтый цыпленок выйдет на уровень ERP. Сообщество разделится на владельцев предприятий (которые пользуют продукт или намерены это делать), тупых пользунов (которым нельзя даже заикаться о доработках, типа е...ись с тем, что есть, тебе за это платят), консультантов (которые помогают подключать готовые модули и вести учет - это фактически выходцы из пользователей, которые прошли обучение за деньги), программистов ABAP (обычно старых дедков, которым некуда уже больше податься, с постыдной з/п и без собственного официального мнения), базис (это сисадмины в SAP). Сопровождение продукта - это дело не одного человека, потому что СЛИШКОМ много функционала и разных транзакций (совокупность форм, аналог мастера или отдельного документа в 1Сы). Развитие продукта - это то, что стремится избежать владелец, потому что задолбался платить кодера за велосипеды. В SAP есть модуль с новым функционалом, консультантами, инструкциями и подробной документацией, платными курсами и красивыми планами и схемами внедрения, включая руководства как "продать", "рисоваться", сколько попросить откатами и рекомендациями к з/п внедренца. Творчеству нет места, все давно "написано", "продумано" и надо просто хитрее пользоваться огромным потенциалом, который накоплен десятилетиями.

SAP XI - это то, что используется для интеграции на "серьезных" предприятиях. Продукт имеет возможность конвертировать iDoc (стандартный формат, для серриализации объектов, к примеру, в XML). Там есть всегда схема xsd (и даже wsdl), и гарантированная доставка и ВООБЩЕ много всего. Со временем Вы поймете, что у 1С нет ничего своего, что достойно внимания.

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

SAP - это не зло и не месть немцев за поражение во второй мировой, а просто огромный труд всей Европы, не потерянный при выпуске новых релизов платформы. Есть древние модули, есть современные, есть красивый интерфейс (OpenUI/SapUI), есть много продуктов (многие написаны на java).

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

Остается только развивать себя, чтоб з/п повышать и плевать на "общее" дело 1С.
zoytsa; acanta; +2 Ответить
16. user642695_crocus.vladikina 27.06.19 14:20 Сейчас в теме
(15) там работают структуры, что из одного офиса идет передача информации в другой. такая сложная техника. а защиты от внутренней команды нет. В штатах есть, в наших структурах беззаконие. если вы высунетесь в сапах, то могут ограничить вас в ваших правах и чтобы сделать замечание кому-то - очень опасно. у меня были большие издержки, и я работала когда в офисе, стали общаться так : "молчите , а то загремите в тюрьму" и все 20 программистов каждый повторял , что надо говорить правильно. Это как бы ясно ? Если Вы порядочный человек - Вы им будете не нужны
Люди нарушают законодательство, а техники если у Вас нет- очки с камерой или зубная паста с жучками - могут лишить работы/квартиры
17. VmvLer 27.06.19 14:33 Сейчас в теме
(15) Вам бы выступить на конференции Инфостара и расставить все точки над "i".

Причем, все остальные выступления можно взять и отменить, ибо зачем
переливать из пустого в порожнее и раздувать мифы о могуществе 1С.

Жаль, что вам не дадут выступить да и вряд ли вы согласитесь, ибо зачем
переливать из пустого в порожнее и раздувать мифы о могуществе SAP.
18. user642695_crocus.vladikina 27.06.19 14:38 Сейчас в теме
онипо-моему гарантию дают с возвратом денег....
14. user642695_crocus.vladikina 27.06.19 08:02 Сейчас в теме
19. timurkhann 22.03.21 16:24 Сейчас в теме
Добрый день!

Скачали данную dll.
По примеру попробовали подключить внешнюю компоненту (УПП 1.3.142.1)), система возвращает ложь:

res=ПодключитьВнешнююКомпоненту(ПутьДоНашейDLL, "VK", ТипВнешнейКомпоненты.Native);
    ДемоКомп = Новый("AddIn.VK.SapRfc");

dll актуальна?
Что необходимо сделать, чтобы подключить данную компоненту?
20. timurkhann 24.03.21 16:35 Сейчас в теме
Добрый день!

Скачали данную dll.
По примеру попробовали подключить внешнюю компоненту (УПП 1.3.142.1)), система возвращает ложь:

res=ПодключитьВнешнююКомпоненту(ПутьДоНашейDLL, "VK", ТипВнешнейКомпоненты.Native);
ДемоКомп = Новый("AddIn.VK.SapRfc");

dll актуальна?
Что необходимо сделать, чтобы подключить данную компоненту?
Оставьте свое сообщение

См. также

Конвертация данных Парус 7, 10 - ЗУП 2.5, ЗИКБУ 1.0, КА 1.1, УПП Промо

Внешние источники данных Зарплата Управление персоналом (HRM) Зарплата Управление персоналом (HRM) v8 КА1 ЗУП2.5 УПП1 БГУ Россия БУ Госбюджет Абонемент ($m)

Перенос данных Парус 7, 10 - ЗУП 2.5, ЗИКБУ 1.0, КА 1.1, УПП Переносит данные сотрудника, физического лица и начисления за произвольный период

1 стартмани

10.06.2014    36119    67    kns77    87    

Пример обмена данными через XDTO

Внешние источники данных Интеграция v8 УНФ БП3.0 УТ11 КА2 Абонемент ($m)

Пример обмена данными между 1С и сторонним приложением посредством механизма XDTO.

1 стартмани

01.03.2021    1587    4    user925427    2    

Улучшенная обработка универсального обмена данными в формате XML (УФ)

Универсальные обработки Внешние источники данных Обмен через XML v8 v8::УФ 1cv8.cf Абонемент ($m)

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

1 стартмани

23.06.2020    8114    108    Lem0n    1    

И еще раз о HTTP-сервисах

WEB Внешние источники данных Интеграция v8 БП3.0 ЗУП3.x Россия Абонемент ($m)

Как разработать  подсистему обмена  с сильно ограниченными правами доступа к базе вопрошающего субъекта с использованием различных вариантов маршрутизации.

10 стартмани

28.04.2020    6523    8    zavsom    2    

Загрузка данных из М-Аптеки+ в 1С:Бухгалтерия 8 (ред. 3.0) Промо

Внешние источники данных Файловые протоколы обмена, FTP v8 v8::БУ БП3.0 Фармацевтика, аптеки БУ Абонемент ($m)

Обработка для загрузки файлов выгрузки из программы для автоматизации аптек и аптечных сетей М-Аптека+ в 1С:Бухгалтерия 8, редакция 3.0.

11.07.2014    38369    70    1C_MApteka    38    

Взаимодействие HTML (COM объект, WebKit) с 1С (обычные и управляемые формы)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Показан пример использования HTML (COM объект, WebKit) в 1С (8.3).

2 стартмани

18.01.2020    10556    28    Deniskinr83    0    

Google drive - менеджер файлов

WEB Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Синхронизация с гугл диском легко и просто!

10 стартмани

05.12.2019    13435    35    zykov_vitaliy    26    

Использование хранимых процедур MS SQL Server в 1С

Внешние источники данных v8 1cv8.cf Абонемент ($m)

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

1 стартмани

03.12.2019    14180    11    Dedushka    27    

Менеджер загрузки данных из весов с печатью этикеток Промо

Внешние источники данных Весы Учет ТМЦ Учет ТМЦ v8 УТ10 УПП1 Абонемент ($m)

Программное обеспечение "Менеджер загрузки данных из весов с печатью этикеток" предназначено для автоматического получения данных по сети Ethernet из весов МАССА-К моделей ВПМ и ТВ_Р3 (модификация MF) в режиме On-Line.

1 стартмани

20.12.2011    25517    81    hrip    10    

Обновление расширений с Google Drive

Расширения Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Предлагаемое расширение содержит обработку, которая считывает информацию с диска Google и при наличии новой версии производит обновление текущих расширений конфигурации.

1 стартмани

03.10.2019    5652    3    Sedaiko    4    

Получение изображения с IP-камеры

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Получение изображения JPG с IP-камеры в виде двоичных данных. В 1С может применяться для фотографирования объектов.

1 стартмани

10.09.2019    13509    39    sivin-alexey    10    

Чтение файлов PDF из 1С

Внешние источники данных Универсальные обработки v8 1cv8.cf Абонемент ($m)

Насколько мне известно, у платформы 1С нет встроенных средств чтения на лету файлов PDF для их последующего анализа, и приходится использовать внешние инструменты. Об одном из таких вариантов и пойдет речь.

1 стартмани

09.09.2019    14121    39    da_1c    4    

Что нам стоит Push построить Промо

Внешние источники данных v8 v8::Mobile Абонемент ($m)

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

1 стартмани

08.09.2016    30192    17    PloAl    8    

Согласование задач из Outlook

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Согласование задач непосредственно из почтовой программы, в моем случае Outlook 2013 без каких-либо дополнительных настроек. Из почты отправляется GET запрос к HTTP-сервису 1С, который в свою очередь выполняет задачу.

1 стартмани

06.09.2019    10691    15    duhh    17    

Телеграм 1С – почти коробка

Внешние источники данных v8 Абонемент ($m)

Почему это решение называется «почти коробка»? Потому, что это почти коробочное решение. С его помощью, просто добавив подсистему в конфигурацию, уже можно начинать взаимодействовать с мессенджером Telegram.

10 стартмани

20.08.2019    16712    31    zfilin    66    

Расширение Бром для интеграции с 1С

Внешние источники данных WEB v8 Абонемент ($m)

Из этой статьи вы узнаете, как можно быстро и просто синтегрироваться с любой конфигурацией 1С при помощи расширения Бром.

1 стартмани

06.08.2019    8569    5    itworks    20    

Конфигурация для обмена данными (интеграционная шина)

Внешние источники данных WEB v8 1cv8.cf Абонемент ($m)

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

4 стартмани

08.07.2019    16335    33    miha-28    17    

Почта России - отправка и отслеживание, интеграция с Документооборот 8

Внешние источники данных Документооборот и делопроизводство Документооборот и делопроизводство v8 ДО Россия УУ Абонемент ($m)

Выгрузка почтовых отравлений в личный кабинет отправки Почты России; отслеживание почтовых отправлений через Почту России; расширение для интеграции Документооборот 8 с Почтой России

5 стартмани

04.06.2019    13780    98    wtlz    44    

Пример работы с viber из 1С, отправка сообщений из 1С в viber

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Обработка разработана для примера отправки сообщений в viber из 1С.

1 стартмани

16.05.2019    18768    96    Isa816    24    

Выгрузка и подготовка данных для программы "Перечень льготных профессий" для 1С: ЗУП 2.5 (ОТКРЫТЫЙ КОД) Промо

Рабочее место Внешние источники данных Управление персоналом (HRM) Управление персоналом (HRM) v8 v8::СПР ЗУП2.5 Россия БУ ФОМС, ПФ, ФСС Абонемент ($m)

Обработка для формирования и редактирования данных для перечня льготных профессий. В связи с прекращением поддержки ЗУП 2.5 и отсутствием времени на доработку для сдачи годовой отчетности открыл код модуля. Не очередная выгрузка стажей, а практически полный аналог перечня для 1С. Формирование и редактирование стажей с последующей выгрузкой в формат перечня, но только ГОРАЗДО удобнее и быстрее. В общем, смотрите видео. Где-то половина времени на написание обработки ушла именно на удобство и скорость работы. Внимание: код модуля обработки открыт

5 стартмани

09.11.2015    54979    63    Black-fog    62    

Шаблон http-сервиса для вашего проекта

Внешние источники данных WEB Мобильная разработка v8 v8::Mobile 1cv8.cf Абонемент ($m)

Http-сервис для обмена данными в формате JSON. Обработчики этого сервиса находятся во внешней обработке, что позволяет дорабатывать его без изменения конфигурации. Также прилагаю пример мобильного приложения для работы с данным сервисом (получает номенклатуру и остатки на складе). Сервис очень быстро разворачивается и масштабируется под ваши задачи.

3 стартмани

04.05.2019    22702    82    MarkoSokolov    48    

WhatsApp чат для 1С

Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

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

5 стартмани

15.04.2019    13536    40    ManyakRus    20    

Доработка функционала отправки дополнительных реквизитов 1С: ЭДО для Татнефть

Внешние источники данных Документооборот и делопроизводство Документооборот и делопроизводство v8 ERP2 БУ Абонемент ($m)

Подключаемое расширение к конфигурации ERP с функционалом отправки дополнительных реквизитов 1С ЭДО для Татнефть (№ и дата договора, подразделение, автор, примечание) в электронных документах Счет-фактуры и ТОРГ-12 Проверялось на 1С:ERP Управление предприятием 2.4.6.160.

2 стартмани

07.04.2019    11717    17    sapervodichka    10    

Подсистема обмена данными с порталом ИМНС по электронным счетам-фактурам (автоматический обмен) Промо

Внешние источники данных WEB Инструментарий разработчика v8 1cv8.cf Беларусь БУ НДС Абонемент ($m)

Подсистема включает документы и обработки для автоматического обмена данными с порталом ИМНС через web-сервис. Присутствует возможность заполнения данными типовых операций за период, учёта входящих документов, учёта произвольных исходящих документов. Приложены обработки для запуска задания планировщика на автоматический обмен данными.

1 стартмани

28.07.2016    36177    19    c1nil    4    

Формирование xml файла ЭДО (СБИС, Диадок, Такском и т.п.) для типовых документов (счета-фактуры, накладные)

Внешние источники данных Обмен через XML Документооборот и делопроизводство Документооборот и делопроизводство v8 1cv8.cf Абонемент ($m)

Не все типовые документы типовых конфигураций 1С можно выгрузить в файл формата xml ЭДО. Например счет-фактуру, на текущий момент момент это не предусмотрено. Обработка позволяет сделать это.

4 стартмани

30.03.2019    55481    303    capitan    93    

Генерация схемы xsd из файла xml

Инструментарий разработчика Внешние источники данных v8 Абонемент ($m)

Утилита, генерирующая xsd схему на основании xml файла.

1 стартмани

25.03.2019    19281    32    nbeliaev    11    

Работа с Active Directory из 1С (загрузка / выгрузка данных)

Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Загрузка данных из Active Directory / Изменение информации пользователя в AD из 1С.

1 стартмани

26.02.2019    14507    105    Смешной 1С    7    

 Интеграция 1С и C#. Обращение к 1С через COM. Создание номенклатуры и выполнение запроса к 1С из C# на примере интеграции с Союз-PLM (система информационной поддержки жизненного цикла изделий). Обработка «Загрузка заказа на сборку». (ERP) Промо

Загрузка и выгрузка в Excel Внешние источники данных Интеграция v8 ERP2 Абонемент ($m)

Союз-PLM представляет собой полнофункциональный программный комплекс для решения  широкого спектра задач управления инженерной технической информацией наукоемких изделий и сложных инженерных объектов в области машиностроения, приборостроения, архитектуры, строительства. На практике, это управление конструкторской документацией, интегрированное с САПР, бизнес-процессы, файловый архив. Все это работает в SQL и шевелится с помощью скриптов на C#. Скрипты свободно  отлаживаются в MS Visual Studio. Подробнее смотрите на их сайте: http://www.programsoyuz.ru/products/system-soyuz-plm.html  Редактирование, конструирование и использование бизнес-процессов на порядок лучше систем на базе 1С из тех, что я изучил.

1 стартмани

25.07.2016    49680    5    milkers    2    

HTTP API Диадок. Загружаем в Диадок любой документ. Посредством POST и GET запросов

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Поставили задачу через HTTP API Диадок (diadoc-api.kontur.ru) отправить любой файл в Диадок и подписать его (например, служебную записку в формате пдф). Посредством POST и GET запросов.

2 стартмани

14.01.2019    14870    40    John_d    12    

JSON-RPC. Удалённый вызов процедур

Инструментарий разработчика Внешние источники данных v8 Абонемент ($m)

Реализация спецификации JSON-RPC.

1 стартмани

04.01.2019    7015    22    berezdetsky    0    

Интеграция WhatsApp в 1С (botcorp.io и api-messenger.com)

Внешние источники данных v8 Абонемент ($m)

Сейчас у WhatsApp более 1 млрд. пользователей во всём мире. В России мессенджер держится на верхних строчках по популярности среди всех мессенджеров. Из чего следует, что WhatsApp является самым желанным мессенджером для интеграции с 1С.

3 стартмани

22.11.2018    28087    61    17808849    49    

Импорт из EXCEL и других источников (xls, xlsx, xlsb, ods, sxc, dbf, mxl, csv, clipboard, sql) в 1С Промо

Загрузка и выгрузка в Excel Внешние источники данных Обработка справочников Практика программирования Обработка документов v8 КА1 БП2.0 УТ10 Розница Беларусь Украина Россия БУ Абонемент ($m)

-Наглядная, контролируемая загрузка иерархической номенклатуры с различными атрибутами и картинками из прайсов, файлов табличного вида xls,xlsx,xlsb,ods,sxc,dbf,mxl,csv произвольной структуры по указанному диапазону строк, а также из буфера обмена и внешнего SQL-источника данных в основные, дополнительные и пользовательские реквизиты. -Вариантный поиск номенклатуры. -Создание сопутствующей справочной информации. -Создание документов в национальной/иностранной валюте. -Обычное и управляемое приложение. Файл и Клиент-Сервер.

1 стартмани

16.03.2012    380740    7636    StepByStep    736    

Исправление ошибки универсального обмена Бухгалтерия предприятия, редакция 3.0 (3.0.65.х, расширение конфигурации)

Внешние источники данных Адаптация типовых решений v8 БП3.0 Абонемент ($m)

Уже у третьего клиента вижу ошибку Ошибка проверки данных XDTO: Структура объекта не соответствует типу: {http://www.1c.ru/SSL/Exchange/Message}Header Значит, как говаривал Винни-Пух - это неспроста. Ну и точно неспроста, 1С что-то подшаманили в обмене через универсальный формат.

1 стартмани

19.10.2018    22689    43    capitan    15    

Загрузка чека онлайн-касс (загрузка товаров из чека)

Внешние источники данных WEB Кассовые операции Розничная торговля Кассовые операции Розничная торговля v8 1cv8.cf Абонемент ($m)

Обработка-пример, позволяет любому и из любой конфигурации загрузить информацию о товарах из чека(и не только) из почтового сообщения, отправленного из приложения ФНС проверка чеков.

2 стартмани

08.10.2018    25193    40    echo77    73    

Мониторинг показателей систем 1С 8.3 с помощью Zabbix

Внешние источники данных Zabbix v8 1cv8.cf Абонемент ($m)

Опишу свой опыт мониторинга наших систем 1С с помощью Zabbix и ту пользу, которую можно извлечь из этого.

1 стартмани

05.10.2018    47884    64    akimych    49    

Самый простой клиент ЕГАИС УТМ для розницы. $m Промо

Внешние источники данных Рабочее место Розничная торговля Розничная торговля v8 1cv8.cf Россия УУ Абонемент ($m)

Данная обработка позволяет обеспечить приходную часть магазина розничной торговли алкоголем(ЕГАИС розница), или прочего предприятия. Эти действия становятся обязательными для розничного звена в городских поселениях с 01.01.2016 и будут достаточными до 01.07.2016. Предлагаю Вашему вниманию простое и доступное решение, которое позволяет отсрочить проблему интеграции ЕГАИС в розничное звено до указанной даты. (открытый код). Реализовано на открытой модели http://infostart.ru/public/402052/.

2 стартмани

14.12.2015    41126    8    Terrain25    47    

В Telegram из 1С: сообщения с эмодзи (смайлы, пиктограммы, иконки) пользователям и группам

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Обработка отправляет сообщения с эмоджи (смайлы, иконки, пиктограммы) пользователю или группе в Телеграм. Она также показывает список пользователей и групп, которые связывались с Вашим ботом, из этого списка можно выбрать получателя сообщения.

1 стартмани

20.08.2018    16086    62    uno-c    28    

Отправка сообщений через Telegram (через прокси)

Внешние источники данных v8 v8::УФ 1cv8.cf Абонемент ($m)

Простая обработка для отправки сообщений из 1с в Телеграм конкретному пользователю. Используя прокси-сервер: jqlwb.teletype

1 стартмани

20.07.2018    22468    23    Deda    14    

Обмен 1С:Управление Торговлей 11 и Frontol 5

Внешние источники данных Розничная торговля Розничная торговля v8 УТ11 КА2 Розничная и сетевая торговля (FMCG) Абонемент ($m)

Обработка обмена для 1С Управление Торговлей 11 и фронт-кассовой системы Frontol. Отличия от типовой: выгрузка дисконтных карт с накоплениями. Выгрузка категорий товаров.

3 стартмани

14.07.2018    25953    121    Kutuzov    162    

Модуль для работы 1С (платформа 8.2 и выше) с внешними SOAP Web-сервисами Промо

Внешние источники данных WEB Интеграция v8 1cv8.cf Абонемент ($m)

Модуль для работы 1С (платформа 8.2 и выше) с внешними Web-сервисами, реализованными по протоколу SOAP.

2 стартмани

15.02.2016    42129    85    lunjio    15    

RabbitMQ + 1С. Быстрый старт

Внешние источники данных v8 1cv8.cf Абонемент ($m)

Внешняя компонента для отправки сообщения из 1С в кролика. Сервис прослушивания и перенаправления сообщений из кролика в http или web-сервис.

1 стартмани

10.06.2018    36965    106    Goleff74    43    

Экономим время на ввод операций в 1С: Деньги

Внешние источники данных Обработка документов Банковские операции Банковские операции v8 1cv8.cf Домашние учет и финансы Абонемент ($m)

Рабочее решение автоматического создания операций в 1С: Деньги. Основано на анализе СМС.

1 стартмани

14.05.2018    16188    17    vsbronnikov    29    

Битрикс24. Работаем с оффлайн событиями

Внешние источники данных v8 1cv8.cf Россия Абонемент ($m)

Появление оффлайн событий упростило синхронизацию Битрикс24 -> 1С. Теперь, например, можно загрузить только измененные между сеансами обмена сделки. А не тащить все незавершенные. В статье описание, как это можно сделать.

1 стартмани

11.05.2018    12152    42    user662672_explorer2000    29    

7 причин, почему интеграция стала приятной. Не упускайте ряд потрясающих возможностей Промо

Внешние источники данных Интеграция Мобильная разработка v8 1cv8.cf Абонемент ($m)

В статье показаны примеры получения данных без программирования на стороне «1С:Предприятие 8». Вам нужно проверить гипотезу и проанализировать данные, почему бы не интегрироваться с Excel? Используете технологии .NET и «1С:Предприятие 8», процесс связывания систем движется катастрофически медленно? Хотите native Android приложение с вашими данными всегда под рукой?

1 стартмани

01.10.2015    59889    48    pbazeliuk    23    

Интеграция с Redmine (Rest-API)

Внешние источники данных v8 v8::УФ 1cv8.cf Россия Абонемент ($m)

Интеграция с Redmine (Rest API). Тестировалось на 1С:Предприятие 8.3.12.1412 1. Получение списков Проектов, Трекеров, Статусов, Версий, Пользователей 2. Отбор задач по дополнительным полям (произвольные поля добавляемые пользователями в Redmine) 3. Получение Учета времени с отбором по пользователю и диапазону дат 4. Получение задач с различными отборами (гибкая настройка)

1 стартмани

28.04.2018    16125    49    lastpioneer    6    

Интеграция между Atlassian Jira и 1С:Предприятие 8.3 используя Jira REST API (выборка, создание и изменение запросов, чтение, создание и удаление записей о работах, чтение комментариев и другие возможности)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка на управляемой форме для 1С:Предприятие 8.3 по интеграции с Atlassian Jira используя Jira REST API. Ключевые функции: выборка запросов с использованием JQL; добавление и изменение запросов; добавление, изменение и удаление записей о работах; чтение комментариев к запросам; сохранение всех ключевых параметров между сеансами работы. Тестирование проводилось на платформе 1С (8.3.11.2954) совместно с JIRA Server platform (7.3.7)

1 стартмани

24.04.2018    38536    216    Ko1t    85    

Чтение и запись из таблиц гугл (google sheets) в табличный документ 1С (8.3, управляемые формы)

Внешние источники данных WEB v8 v8::УФ 1cv8.cf Абонемент ($m)

Внешняя обработка на управляемой форме для 1С версии 8.3 для доступа к сервисам Google Sheets c использованием протокола авторизации OAuth 2.0. Выполняет получение списка листов таблицы гугл, чтение таблицы гугл в табличный документ 1С и запись из табличного документа 1С в таблицу гугл. Тестирование проводилось на платформе 1С:Предприятие 8.3 (8.3.11.2954).

1 стартмани

09.04.2018    47334    317    Ko1t    77    

Загрузка документов из системы Emex через веб-сервисы (Коммерция-Автологистика) Промо

Внешние источники данных WEB v8 v8::ОУ УТ10 УУ Абонемент ($m)

Обработка предназначенная для дилеров системы Emex, для загрузки документов из программы Коммерция(Автологистика) в 1С 8.2 Управление торговлей 10. Для загрузки используются веб-сервисы программы Автологистика.

10 стартмани

11.08.2014    22582    1    desarz    1    

Чат бот в 73 строки на 1С - ИИ наступает

Практика программирования Внешние источники данных v8 1cv8.cf Абонемент ($m)

Интеграция с уже готовой системой чат-бота для различных случаев жизни. Используется API от DialogFlow Google. Обработка тестировалась на 1С:Предприятие 8.3 (8.3.10.2252) Должно работать на всех 8.3 версиях.

1 стартмани

09.04.2018    14851    31    Lapitskiy    7    

Загрузка чеков из ФНС (Налоговой), отсканированных с помощью QR-кода, в 1С:Деньги

Внешние источники данных WEB Банковские операции Банковские операции v8 1cv8.cf Домашние учет и финансы УУ Абонемент ($m)

Расширение для получения чеков со всеми товарами в чеке с сайта ФНС (Налоговой).

1 стартмани

19.03.2018    16052    22    semen_2008    4    

Оповещения из ЗУП и ERP в TELEGRAM

Внешние источники данных v8 ERP2 ЗУП3.x Абонемент ($m)

Начитался статей про интеграцию 1С -> Telegram, решил аккумулировать опыт и попробовать сделать какую-нибудь полезную обработку. Как результат - внешняя обработка, уведомляющая ответственных сотрудников по расписанию о необходимости оплаты отпусков, материальной помощи, премий. Данные посылаются в виде PDF файла (Отчет, созданный на основании макета). Можно использовать обработку как обучающую. Тестировалось на ERP 2.4.2.139, на ЗУП 3.X тоже должно работать.

1 стартмани

01.03.2018    16635    57    khabibullin.tu    14    

Подписка на события, преобразование объекта в JSONAPI, отправка в RabbitMQ

Внешние источники данных Универсальные функции v8 1cv8.cf Абонемент ($m)

Обработка содержит функции: - сериализация объекта 1с в JSONAPI - отправка в RabbitMQ по HTTP

1 стартмани

26.02.2018    13863    22    yaxinr    5