Користувальницькі налаштування

Налаштування сайту


bs:scripting_framework

Розбіжності

Тут показані розбіжності між вибраною ревізією та поточною версією сторінки.

Посилання на цей список змін

Порівняння попередніх версійПопередня ревізія
Наступна ревізія
Попередня ревізія
bs:scripting_framework [2019/09/06 14:45] – [QueryBC] wiki_adminbs:scripting_framework [2022/05/23 15:26] (поточний) – зовнішнє редагування 127.0.0.1
Рядок 1: Рядок 1:
 +====== Scripting Framework ======
 +Универсальный бизнес сервис для работы с Siebel.\\
 +Содержит в себе ряд универсальных функций.
  
 +Author: Igor Tereshchenko\\
 +Contact: hucster@gmail.com\\
 +
 +{{ :bs:scripting_framework.sif |}}
 +
 +===== AssociateBySearchExpr =====
 +==== Описание ====
 +
 +
 +<code javascript>
 +function AssociateBySearchExpr(bc: BusComp, fieldname: chars, SearchExpr: chars){
 + try{
 + var oMVGBC: BusComp = bc.GetMVGBusComp(fieldname);
 + if (!QueryBC(oMVGBC,SearchExpr,ForwardOnly)){
 + var oAssocBC: BusComp = bc.GetMVGBusComp(fieldname).GetAssocBusComp(); 
 + if (QueryBC(oAssocBC,SearchExpr,ForwardOnly)){
 + oAssocBC.Associate(NewBefore);
 + }
 + }
 + }
 + catch(e){
 + throw e;
 + }
 + finally{
 + oAssocBC=null;oMVGBC=null;
 + }
 +}
 +</code>
 +==== Пример вызова ====
 +<code javascript>
 + bs = TheApplication().GetService("Scripting Framework");
 + ipPS = TheApplication().NewPropertySet();
 + outPS = TheApplication().NewPropertySet();
 +
 + ipPS.SetProperty("bc", "Contact");
 + ipPS.SetProperty("fieldname", email);
 + ipPS.SetProperty("SearchExpr", "[Id]='1-REWQEWQ'");
 +
 + bs.InvokeMethod("AssociateBySearchExpr", ipPS, outPS);          
 +</code>
 +
 +===== BusCompActivateFields =====
 +
 +==== Описание ====
 +
 +Активация полей Siebel\\
 +Так же есть альтернативный вариант [[escript:mass_activation_fields|активации полей]]
 +==== Пример вызова ====
 +
 +<code javascript>
 +function BusCompActivateFields(bc: BusComp, fieldNames: Array)
 +{
 + for (var i:float=0; i < fieldNames.length; i++)
 + {
 + try{ bc.ActivateField(fieldNames[i]); }
 + catch(e){ throw e;}
 + }
 +}
 +</code>
 +
 +
 +===== QueryBC=====
 +<code javascript>
 +function QueryBC(bc: BusComp, SearchExpr: chars, FWDMode: float): bool{
 + var isRecord: bool = false;
 + if (bc != null){
 + try{
 + if (SearchExpr != ""){
 + bc.ClearToQuery();
 + bc.SetSearchExpr(SearchExpr);
 + }
 + bc.ExecuteQuery(FWDMode);
 + isRecord = bc.FirstRecord();
 + }
 + catch(e){
 + throw e;
 + }
 + }
 + return isRecord;
 +}
 +</code>
 +
 +==== Пример вызова ====
 +<code javascript>
 + bs = TheApplication().GetService("Scripting Framework");
 + ipPS = TheApplication().NewPropertySet();
 + outPS = TheApplication().NewPropertySet();
 +
 + ipPS.SetProperty("bc", "Contact");
 + ipPS.SetProperty("SearchExpr", "[Id]='1-REWQEWQ'");
 + ipPS.SetProperty("FWDMode", "ForwardOnly"); //ForwardOnly / ForwardBackward
 +
 + bs.InvokeMethod("AssociateBySearchExpr", ipPS, outPS);          
 +</code>
 +
 +
 +
 +--- //[[e.zhevak@gmail.com|wiki_admin]] 2019/09/06 14:21//