3. Search History Information: Controller Program

C#: 

  1.         public class RetrieveAuditInfoController
  2.         {
  3.              public AuditVdb RetrieveAuditInfo(string piid)
  4.              {
  5.                              HSDc.RingleFlow.Api.Kernel.History.AuditVdb vdb = new HSDc.RingleFlow.Api.Kernel.History.AuditVdb();
  6.                              IWorkflowEngine engine = WorkflowEngineFactory.GetInstance();
  7.                              IHistoryService service = engine.HistoryService;
  8.                              vdb = service.RetrieveAuditInfo(piid);
  9.                              return TransferVdb(vdb);
  10.             }
  11.         
  12.             private AuditVdb TransferVdb(HSDc.RingleFlow.Api.Kernel.History.AuditVdb original)
  13.             {
  14.                             AuditVdb vdb = new AuditVdb();
  15.                             foreach (DataTable table in original.Tables) {
  16.                                             if (vdb.Tables.Contains(table.TableName)) {
  17.                                                             foreach (DataRow row in table.Rows) {
  18.                                                                             DataRow newrow = vdb.Tables(table.TableName).NewRow();
  19.                                                                             foreach (DataColumn column in table.Columns) {
  20.                                                                                             newrow[column.ColumnName] = row[column.ColumnName];
  21.                                                                             }
  22.                                                                             if ((table.TableName.Equals("Stage"))) {
  23.                                                                                             string stagevar = string.Empty;
  24.                                                                                             HSDc.RingleFlow.Api.Kernel.History.AuditVdb.StageRow srow = (HSDc.RingleFlow.Api.Kernel.History.AuditVdb.StageRow)row;
  25.                                                                                             foreach (object svrow_loopVariable in srow.GetStageVariablesRows) {
  26.                                                                                                             svrow = svrow_loopVariable;
  27.                                                                                                             stagevar += svrow.VariableName + " : " + svrow.VariableValue + ",";
  28.                                                                                             }
  29.                                                                                             if ((stagevar.Length > 0)) {
  30.                                                                                                             stagevar = stagevar.Substring(0, stagevar.Length - 1);
  31.                                                                                             }
  32.                                                                                             newrow["StageVariables"] = stagevar;
  33.                                                                             }
  34.                                                                             vdb.Tables(table.TableName).Rows.Add(newrow);
  35.                                                             }
  36.                                             }
  37.                             }
  38.                             return vdb;
  39.             }
  40.        }


Last edited Jun 25, 2012 at 2:55 PM by cathysung, version 2

Comments

No comments yet.