📚 SAP Business One SDK Help

EDFEntryLog Object
See Also  Members  Example

Description

EDFEntryLog Class

Example

C#Copy Code
int actionID, logID; 
Company comp = new Company(); 
ElectronicCommunicationActionsService srvEcmAction = comp.GetCompanyService().GetBusinessService(ServiceTypes.ElectronicCommunicationActionsService);  
EcmActionLogTypeEnum     logType; 
EcmActionParams paramsByECM = srvEcmAction.GetDataInterface(ElectronicCommunicationActionsServiceDataInterfaces.ecasEcmActionParams); 
paramsByECM.ActionID = ecm2AbsEntry; 
EcmAction action = srvEcmAction.GetEcmAction(paramsByECM); 
foreach(EcmActionLog log in  srvEcmAction.GetEcmActionLogList(action)) 

    actionID = log.ActionID; 
    logID    = log.LogID; 
    logType  = log.Type; 
    // do something with ECM3 data 

  
public void WorkWithEntryDetails(string docGuid) 

  var eds = (ElectronicDocumentService)service.GetBusinessService(ServiceTypes.ElectronicDocumentService); 
  var entryIP = (EDFEntryInputParams)eds.GetDataInterface(ElectronicDocumentServiceDataInterfaces.ecsEDFEntryInputParams); 
 
  entryIP.Code = ElectronicDocProtocolCodeStrEnum.edpcs_FPA; 
  entryIP.GUID = docGuid; 
 
  EDFEntry entry = eds.GetEntry(entryIP); 
  ListEntryLogs(eds, entry); 
 
  EDFEntryAddLogInputParams logIP = CreateLog (eds, entry, ElectronicDocumentEntryLogTypeEnum.edeltAuthorityProcessBegins, ElectronicDocumentAuthorityProcessEnum.edapApproval, ""Approval process started""); 
 
  eds.AddLog (logIP); 

 
 
public void ListEntryLogs(ElectronicDocumentService eds, EDFEntry entry) 

  var logIP = (EDFEntryLogInputParams)eds.GetDataInterface(ElectronicDocumentServiceDataInterfaces.ecsEDFEntryLogInputParams); 
 
  logIP.Code = entry.Code; 
  logIP.GUID = entry.GUID; 
  logIP.LogType = ElectronicDocumentEntryLogTypeEnum.edeltNone; 
 
  EDFEntryLogsCollection logs = null; 
 
  try 
  { 
    logs = eds.GetLogs(logIP); 
 
    if (logs.Count == 0) 
      Console.WriteLine(""Entry has no logs""); 
    else 
    { 
      Console.WriteLine(""Listing logs:""); 
 
      foreach (EDFEntryLog log in logs) 
      { 
        Console.WriteLine(string.Format(""Number = {0}, Type = {1}, Message = '{2}', Authority Process = {3}"", 
          log.LogNumber, log.LogType, log.LogMessage, log.AuthorityProcess)); 
      } 
    } 
  } 
  catch (Exception) 
  { 
    Console.WriteLine(string.Format(""Error while listing logs! Code = {0}, Message = '{1}', Context = '{2}'"", 
      oCompany.GetLastErrorCode(), oCompany.GetLastErrorDescription(), 
      oCompany.GetLastErrorContext())); 
  } 
 
  if (logs != null) 
    Marshal.ReleaseComObject(logs); 
 
  if (logIP != null) 
    Marshal.ReleaseComObject(logIP); 

 
 
public EDFEntryAddLogInputParams CreateLog (ElectronicDocumentService eds, EDFEntry entry, 
  ElectronicDocumentEntryLogTypeEnum type, ElectronicDocumentAuthorityProcessEnum process, 
  string message) 

  var logIP = (EDFEntryAddLogInputParams)eds.GetDataInterface (ElectronicDocumentServiceDataInterfaces.ecsEDFEntryAddLogInputParams); 
 
  logIP.Code = entry.Code; 
  logIP.GUID = entry.GUID; 
  logIP.LogType = type; 
  logIP.AuthorityProcess = process; 
  logIP.LogMessage = message; 
 
  return logIP; 
}

See Also