示例#1
0
        public static bool LoadDefaultPassiveChannels(XCollection <SQLOutboundChanel> chs, string Prefix, string interfaceName)
        {
            //XCollection<SQLOutboundChanel> chs = new XCollection<SQLOutboundChanel>();
            chs.Clear();

            SQLOutboundChanel ch;
            int iFieldID = 0;
            SQLOutQueryResultItem ri;

            #region CH_Patient
            ch               = new SQLOutboundChanel();
            ch.ChannelName   = "CH_PATITENT";
            ch.SPName        = Prefix + GWDataDBTable.Patient.ToString();
            ch.OperationType = ThrPartyDBOperationType.StorageProcedure;
            ch.Modified      = false;

            #region Criteria
            SQLOutQueryCriteriaItem ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "00";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "01";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "02";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "03";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            #endregion

            #region Result

            iFieldID = 0;
            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Index))
            {
                // Third party application need to use this ID to update process flag
                //if (f.GetFullFieldName() == GWDataDBField.i_IndexGuid.GetFullFieldName()) continue;
                if (f.GetFullFieldName() == GWDataDBField.i_DataDateTime.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.i_PROCESS_FLAG.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;
                ri.Translating.Type               = TranslatingType.None;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Patient))
            {
                if (f.GetFullFieldName() == GWDataDBField.p_DATA_ID.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.p_DATA_DT.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;
                ri.Translating.Type               = TranslatingType.None;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            chs.Add(ch);
            #endregion

            ch.Rule.RuleID = GWDataDBTable.Patient.ToString();
            ch.SPStatement = RuleControl.GetOutboundSP(interfaceName, ch.Rule);

            #endregion

            #region CH_Order

            ch               = new SQLOutboundChanel();
            ch.ChannelName   = "CH_ORDER";
            ch.SPName        = Prefix + GWDataDBTable.Order.ToString();
            ch.OperationType = ThrPartyDBOperationType.StorageProcedure;
            ch.Modified      = false;

            #region Criteria
            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "10";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "11";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "12";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "13";
            ch.Rule.QueryCriteria.MappingList.Add(ci);
            #endregion

            #region Result

            iFieldID = 0;
            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Index))
            {
                // Third party application need to use this ID to update process flag
                //if (f.GetFullFieldName() == GWDataDBField.i_IndexGuid.GetFullFieldName()) continue;
                if (f.GetFullFieldName() == GWDataDBField.i_DataDateTime.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.i_PROCESS_FLAG.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Patient))
            {
                if (f.GetFullFieldName() == GWDataDBField.p_DATA_ID.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.p_DATA_DT.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Order))
            {
                if (f.GetFullFieldName() == GWDataDBField.o_DATA_ID.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.o_DATA_DT.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            chs.Add(ch);
            #endregion

            ch.Rule.RuleID = GWDataDBTable.Order.ToString();
            ch.SPStatement = RuleControl.GetOutboundSP(interfaceName, ch.Rule);

            #endregion

            #region CH_Report

            ch               = new SQLOutboundChanel();
            ch.ChannelName   = "CH_REPORT";
            ch.SPName        = Prefix + GWDataDBTable.Report.ToString();
            ch.OperationType = ThrPartyDBOperationType.StorageProcedure;
            ch.Modified      = false;

            #region Criteria
            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "30";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "31";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "32";
            ch.Rule.QueryCriteria.MappingList.Add(ci);

            ci = new SQLOutQueryCriteriaItem();
            ch.Rule.QueryCriteria.Type = QueryCriteriaRuleType.DataSet;
            ci.GWDataDBField           = GWDataDBField.i_EventType;
            ci.Operator               = QueryCriteriaOperator.Equal;
            ci.Type                   = QueryCriteriaType.Or;
            ci.SourceField            = ci.GWDataDBField.GetFullFieldName();
            ci.TargetField            = ci.GWDataDBField.GetFullFieldName();
            ci.Translating.Type       = TranslatingType.FixValue;
            ci.Translating.ConstValue = "33";
            ch.Rule.QueryCriteria.MappingList.Add(ci);
            #endregion

            #region Result

            iFieldID = 0;
            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Index))
            {
                // Third party application need to use this ID to update process flag
                //if (f.GetFullFieldName() == GWDataDBField.i_IndexGuid.GetFullFieldName()) continue;
                if (f.GetFullFieldName() == GWDataDBField.i_DataDateTime.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.i_PROCESS_FLAG.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Patient))
            {
                if (f.GetFullFieldName() == GWDataDBField.p_DATA_ID.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.p_DATA_DT.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Order))
            {
                if (f.GetFullFieldName() == GWDataDBField.o_DATA_ID.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.o_DATA_DT.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            foreach (GWDataDBField f in GWDataDBField.GetFields(GWDataDBTable.Report))
            {
                if (f.GetFullFieldName() == GWDataDBField.r_DATA_ID.GetFullFieldName())
                {
                    continue;
                }
                if (f.GetFullFieldName() == GWDataDBField.r_DATA_DT.GetFullFieldName())
                {
                    continue;
                }

                ri = new SQLOutQueryResultItem();
                ri.GWDataDBField = f;
                ri.SourceField   = f.FieldName.ToUpper();
                ri.TargetField   = f.GetFullFieldName().Replace(".", "_").ToUpper();
                ri.ThirdPartyDBPatamter.FieldName = f.GetFullFieldName().Replace(".", "_").ToUpper();

                ri.ThirdPartyDBPatamter.FieldID   = ++iFieldID;
                ri.Translating.Type               = TranslatingType.None;
                ri.ThirdPartyDBPatamter.FieldType = System.Data.OleDb.OleDbType.VarChar;

                ch.Rule.QueryResult.MappingList.Add(ri);
            }

            chs.Add(ch);
            #endregion

            ch.Rule.RuleID = GWDataDBTable.Report.ToString();
            ch.SPStatement = RuleControl.GetOutboundSP(interfaceName, ch.Rule);

            #endregion



            return(true);
        }
示例#2
0
 public MWLQueryResultItem(DPath dcmPath, GWDataDBField gwField)
 {
     DPath            = dcmPath;
     GWDataDBField    = gwField;
     base.TargetField = DicomMappingHelper.DPath2DataColumnName(dcmPath);
 }
示例#3
0
        private void LoadFields()
        {
            this.listViewMappings.Items.Clear();

            GWDataDBField[] Index   = GWDataDBField.GetFields(GWDataDBTable.Index);
            GWDataDBField[] Patient = GWDataDBField.GetFields(GWDataDBTable.Patient);
            GWDataDBField[] Order   = GWDataDBField.GetFields(GWDataDBTable.Order);
            GWDataDBField[] Report  = GWDataDBField.GetFields(GWDataDBTable.Report);

            foreach (GWDataDBField item in Index)
            {
                if (item.FieldName.ToUpper() == GWDataDBField.i_IndexGuid.FieldName.ToUpper())
                {
                    continue;
                }
                if (item.FieldName.ToUpper() == GWDataDBField.i_DataDateTime.FieldName.ToUpper())
                {
                    continue;
                }
                if (item.FieldName.ToUpper() == GWDataDBField.i_PROCESS_FLAG.FieldName.ToUpper())
                {
                    continue;
                }

                ListViewItem lvi = this.listViewMappings.Items.Add("");
                lvi.SubItems.Add(item.FieldName);
                lvi.SubItems.Add("");
                lvi.SubItems.Add("");
                lvi.Group = listViewMappings.Groups["grpIndex"];
                lvi.Tag   = item;
            }

            foreach (GWDataDBField item in Patient)
            {
                if (item.FieldName.ToUpper() == GWDataDBField.p_DATA_ID.FieldName.ToUpper())
                {
                    continue;
                }
                if (item.FieldName.ToUpper() == GWDataDBField.p_DATA_DT.FieldName.ToUpper())
                {
                    continue;
                }
                ListViewItem lvi = this.listViewMappings.Items.Add("");
                lvi.SubItems.Add(item.FieldName);
                lvi.SubItems.Add("");
                lvi.SubItems.Add("");
                lvi.Group = listViewMappings.Groups["grpPatient"];
                lvi.Tag   = item;
            }

            foreach (GWDataDBField item in Order)
            {
                if (item.FieldName.ToUpper() == GWDataDBField.o_DATA_ID.FieldName.ToUpper())
                {
                    continue;
                }
                if (item.FieldName.ToUpper() == GWDataDBField.o_DATA_DT.FieldName.ToUpper())
                {
                    continue;
                }

                ListViewItem lvi = this.listViewMappings.Items.Add("");
                lvi.SubItems.Add(item.FieldName);
                lvi.SubItems.Add("");
                lvi.SubItems.Add("");
                lvi.Group = listViewMappings.Groups["grpOrder"];
                lvi.Tag   = item;
            }

            foreach (GWDataDBField item in Report)
            {
                if (item.FieldName.ToUpper() == GWDataDBField.r_DATA_ID.FieldName.ToUpper())
                {
                    continue;
                }
                if (item.FieldName.ToUpper() == GWDataDBField.r_DATA_DT.FieldName.ToUpper())
                {
                    continue;
                }
                ListViewItem lvi = this.listViewMappings.Items.Add("");
                lvi.SubItems.Add(item.FieldName);
                lvi.SubItems.Add("");
                lvi.SubItems.Add("");
                lvi.Group = listViewMappings.Groups["grpReport"];
                lvi.Tag   = item;
            }
        }
示例#4
0
        private static void UpdateGUID(DataTable dt, DataColumn dc, string columnName, GWDataDBField field)
        {
            if (dc.ColumnName == columnName)
            {
                Dictionary <string, string> rpIDs = new Dictionary <string, string>();
                foreach (DataRow dr in dt.Rows)
                {
                    object o    = dr[dc];
                    string rpID = (o == null) ? "" : o.ToString();
                    if (rpID.Length < 1)    // need to generate GUID
                    {
                        string guid = DicomMappingHelper.GetGUID(dr);
                        if (rpIDs.ContainsKey(guid))
                        {
                            // 20100222
                            // has already generated GUID in this loop,
                            // for example there are two records with same guid and splitted according to multiple procedure codes

                            // 20100227
                            // as we move the auto generating STDUID before the procedure code spliting in the class Kodak.GCGateway.DicomAdapter.MWLServer.Dicom.WorklistSCP,
                            // this (different records with the same guid/data_id) will not happen any more.

                            rpID = rpIDs[guid];
                        }
                        else
                        {
                            rpID = DHelper.GetDicomGUID(Program.DeviceMgt.DeviceDirInfor.Header.ID, Program.ConfigMgt.Config.MaxAutoGeneratedLengthOfSTDUID);
                            rpIDs.Add(guid, rpID);
                        }
                        dr[dc] = rpID;
                    }
                }
                if (rpIDs.Count > 0)
                {
                    StringBuilder sb = new StringBuilder();
                    foreach (KeyValuePair <string, string> pair in rpIDs)
                    {
                        string tableName = GWDataDB.GetTableName(Program.InterfaceName, GWDataDBTable.Order);
                        string pkName    = GWDataDBField.o_DATA_ID.FieldName;
                        string fieldName = field.FieldName;
                        sb.Append("UPDATE ").Append(tableName)
                        .Append(" SET ").Append(fieldName).Append(" = '").Append(pair.Value).Append("'")
                        .Append(" WHERE ").Append(pkName).Append(" = '").Append(pair.Key).Append("';\r\n");
                    }
                    if (Program.Database.DoQuery(sb.ToString()) == null)
                    {
                        Program.Log.Write(LogType.Error, "Update " + columnName + " into database failed.");
                    }
                    else
                    {
                        Program.Log.Write("Update " + columnName + " into database succeeded.");
                    }
                }
            }
        }