The 1C:Enterprise developers forum

#1
People who like this: 0 Yes / 0 No
Just came
Rating: 0
Joined: May 17, 2021
Company:

Hello!
I create service that works with data in 1C by Odata. Odata works like a charm.
I get all needed data from 1C, mirroring it in service Postgresql DB, extend it by additional fields and process.


But then I start think about updating data in my DB when it changes in 1C.
At first I think about reading Journals and get process entries from it, but it's looks tedious.

Does 1C have built-in triggers or something to works with? I want to send HTTP-request when some Entities are changed/created/deleted.

 
#2
People who like this: 0 Yes / 0 No
Administrator
Rating: 29
Joined: Oct 3, 2019
Company:

Hi Denis,

in your case, I would use an object called "Event Subscription" (scr_1).

The peculiarity of this object is that the developer can intercept the events of other objects and process them accordingly.

For example (scr_2) Subscription "OnWriteDocument". The developer can determine which objects' events to intercept (scr_3). He can also determine which event needs to be intercepted (scr_4) and describe the program procedure that must be performed in this case (scr_5).

Returning to your case, when you change certain objects, you can write these changes to the information register, and then, through the OData mechanism, access this register from the external system.

Download scr_1.png (12.07 KB)
Download scr_3.png (47.76 KB)
Download scr_4.png (22.94 KB)
Download scr_5.png (48.82 KB)
 
#3
People who like this: 0 Yes / 0 No
Just came
Rating: 0
Joined: May 17, 2021
Company:

Aleksandr Biryukov, thank you very much for quick answer, will take a look.

 
#4
People who like this: 0 Yes / 0 No
Administrator
Rating: 29
Joined: Oct 3, 2019
Company:

It's my pleasure :-)

How did you read additional attributes via OData? How did I advise or otherwise?

 
Subscribe
Users browsing this topic (guests: 1, registered: 0, hidden: 0)
Be the first to know tips & tricks on business application development!

A confirmation e-mail has been sent to the e-mail address you provided .

Click the link in the e-mail to confirm and activate the subscription.

/* Улучшаем читаемость списков в документации */ .workarea ul, .content ul { margin: 15px 0 20px 25px !important; padding: 0 !important; list-style-type: disc !important; } .workarea li, .content li { margin-bottom: 8px !important; padding-left: 5px !important; line-height: 1.6 !important; } /* Ультимативный фикс для всех уровней заголовков в контенте */ .workarea h1, .workarea h2, .workarea h3, .workarea h4, .workarea h5, .workarea h6, .content h1, .content h2, .content h3, .content h4, .content h5, .content h6, div[id*="content"] h5, div[class*="content"] h5 { display: block !important; font-weight: 700 !important; color: #005aa0 !important; /* Наш фирменный синий */ text-transform: none !important; margin-top: 30px !important; margin-bottom: 15px !important; line-height: 1.2 !important; font-family: Arial, sans-serif !important; } /* Принудительные размеры в пикселях (чтобы не зависеть от % или em) */ .workarea h1, .content h1 { font-size: 28px !important; } .workarea h2, .content h2 { font-size: 24px !important; } .workarea h3, .content h3 { font-size: 21px !important; } .workarea h4, .content h4 { font-size: 19px !important; } .workarea h5, .content h5 { font-size: 18px !important; } /* Для 5 решеток ##### */ .workarea h6, .content h6 { font-size: 16px !important; } /* Фикс, если Битрикс добавил лишние отступы перед списками после заголовка */ .workarea h5 + ul, .content h5 + ul { margin-top: 5px !important; }