コード例 #1
0
        public DataTable GetSchedule(string RunTime)
        {
            DataTable dt = new DataTable();

            try
            {
                using (SqlConnection cnn = new SqlConnection(ClassGlobalSettings.GetConnString))
                {
                    cnn.Open();

                    using (SqlCommand cmd = new SqlCommand())
                    {
                        cmd.Connection = cnn;

                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.CommandText = "dbo.getschedules";

                        cmd.Parameters.Add("@time", SqlDbType.VarChar, 8).Value = RunTime;

                        using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                        {
                            da.Fill(dt);
                        }
                    }
                }
            }
            catch (SqlException sqlex)
            {
                ClassErrors Errors = new ClassErrors(null, sqlex);

                // We dont have deliveries id at this point.
                logerror(0, string.Empty, sqlex.Message, Errors.StackTrace);
            }
            catch (Exception ex)
            {
                ClassErrors Errors = new ClassErrors(ex, null);

                // We dont have deliveries id at this point.
                logerror(0, string.Empty, ex.Message, Errors.StackTrace);
            }

            return(dt);
        }
コード例 #2
0
        public DataTable GetDeliveries(int DeliveriesId)
        {
            DataTable dt = new DataTable();

            try
            {
                using (SqlConnection cnn = new SqlConnection(ClassGlobalSettings.GetConnString))
                {
                    cnn.Open();

                    using (SqlCommand cmd = new SqlCommand())
                    {
                        cmd.Connection = cnn;

                        cmd.CommandType = CommandType.StoredProcedure;
                        cmd.CommandText = "dbo.getdeliveryforrun";

                        cmd.Parameters.Add("@deliveriesid", SqlDbType.Int, -1).Value = DeliveriesId;

                        using (SqlDataAdapter da = new SqlDataAdapter(cmd))
                        {
                            da.Fill(dt);
                        }
                    }
                }
            }
            catch (SqlException sqlex)
            {
                ClassErrors Errors = new ClassErrors(null, sqlex);

                logerror(DeliveriesId, string.Empty, sqlex.Message, Errors.StackTrace);
            }
            catch (Exception ex)
            {
                ClassErrors Errors = new ClassErrors(ex, null);

                logerror(DeliveriesId, string.Empty, ex.Message, Errors.StackTrace);
            }

            return(dt);
        }
コード例 #3
0
        public override string ExecFeed(object objPackage)
        {
            ClassFormatParams clsPackage = new ClassFormatParams();

            clsPackage = (AutoFeedParams.ClassFormatParams)objPackage;
            objPackage = null;

            string PROCEDURE_NAME = "ExecFeed";

            //SqlDataReader drJobDescription = null;
            DataTable dt = new DataTable();

            dt = clsPackage.Data;
            //clsPackage.Guid = base.StripTheHTML(clsPackage.Guid);

            int intClientID   = 0;
            int intAutoFeedID = clsPackage.AutoFeedID;

            ClassXMLSettings      clsXML    = new ClassXMLSettings();
            ClassMembers          clsMems   = new ClassMembers();
            ClassFormatJobsParams clsParams = new ClassFormatJobsParams();

            clsParams.IsTest = (clsPackage.ParamUsed.Contains("TEST") && (ClassStaticData.Debug == true));
            ClassFormatJobs clsFormat = new ClassFormatJobs(clsPackage.EmediaID, clsParams);

            clsFormat.PropProcessGuid = clsPackage.Guid;
            clsParams = null;
            StringBuilder sb = new StringBuilder();
            StringBuilder sbJobDescription = new StringBuilder();

            const string SECTION_NAME = "HOSPITALITY_ONLINE";

            int intJobAction   = 0;
            int intReqEmediaID = 0;
            int intReqID       = 0;

            string strHeader       = string.Empty;
            string strRequirements = string.Empty;
            string strDuties       = string.Empty;
            string strFooter       = string.Empty;
            string strChildMedia   = string.Empty;

            string strApplyURL            = string.Empty;
            string strImgTrack            = string.Empty;
            string strHistoricFileName    = string.Empty;
            string strJobAction           = string.Empty;
            string strPostMethod          = string.Empty;
            string strAppendingURL        = string.Empty;
            string strKeepDeliveryAddress = string.Empty;
            string strXMLEncoding         = string.Empty;
            string strExternalSourceID    = string.Empty;
            string strCompensation        = string.Empty;
            string strContactEmail        = string.Empty;
            string strAPIUser             = string.Empty;
            string strAPIKey       = string.Empty;
            string strTitle        = string.Empty;
            string strPostingParam = string.Empty;

            bool blnIsScraped = false;

            int intRows     = 0;
            int intAdds     = 0;
            int intUpdates  = 0;
            int intDeletes  = 0;
            int intJobCount = 0;

            try
            {
                XmlDocument doc     = new XmlDocument();
                XmlNode     docNode = doc.CreateXmlDeclaration("1.0", "UTF-8", null);

                doc.AppendChild(docNode);
                XmlNode HodesNode = doc.CreateElement("HODES_XML_ENVELOPE");
                doc.AppendChild(HodesNode);

                while (intRows < dt.Rows.Count) //for (int intRows = 0; intRows < dt.Rows.Count; intRows += 1)
                {
                    intJobCount   += 1;
                    intReqEmediaID = Convert.ToInt32(dt.Rows[intRows]["req_emediaid"]);
                    intReqID       = Convert.ToInt32(dt.Rows[intRows]["requisition_id"]);
                    intClientID    = Convert.ToInt32(dt.Rows[intRows]["ClientID"]);
                    strAPIUser     = clsXML.GetXMLSettings(SECTION_NAME, "API_USER_C_" + intClientID.ToString(), string.Empty);
                    strAPIKey      = clsXML.GetXMLSettings(SECTION_NAME, "API_KEY_C_" + intClientID.ToString(), string.Empty);

                    if (clsMems.IsNumeric(dt.Rows[intRows]["low_base_compensation"].ToString()) && clsMems.IsNumeric(dt.Rows[intRows]["high_base_compensation"].ToString()))
                    {
                        strCompensation = dt.Rows[intRows]["low_base_compensation"].ToString() + " - " + dt.Rows[intRows]["high_base_compensation"].ToString();
                    }
                    else
                    {
                        strCompensation = string.Empty;
                    }

                    if (strKeepDeliveryAddress.Length == 0)
                    {
                        strKeepDeliveryAddress = clsPackage.DeliveryAddress;
                    }

                    clsPackage.DeliveryAddress = string.Empty;

                    switch (dt.Rows[intRows]["JobAction"].ToString())
                    {
                    case "A":
                        //strAppendingURL = @"/v1/jobs";
                        clsPackage.DeliveryAddress = strKeepDeliveryAddress; // + strAppendingURL;
                        strPostMethod       = "POST";
                        strJobAction        = "ADD";
                        strHistoricFileName = clsPackage.FileName;
                        intJobAction        = (int)ClassStaticData.FileMode.NormalFileMode;

                        intAdds += 1;
                        break;

                    case "U":
                        //strAppendingURL = @"/v1/jobs/partner-job-id=" + intReqEmediaID.ToString();
                        clsPackage.DeliveryAddress = strKeepDeliveryAddress; // + strAppendingURL;
                        strPostMethod       = "POST";
                        strJobAction        = "EDIT";                        // This format uses EDIT instead of UPDATE.
                        strHistoricFileName = clsPackage.FileName;
                        intJobAction        = (int)ClassStaticData.FileMode.UpdateFileMode;

                        intUpdates += 1;
                        break;

                    case "D":
                        //strAppendingURL = @"/v1/jobs/partner-job-id=" + intReqEmediaID.ToString();
                        clsPackage.DeliveryAddress = strKeepDeliveryAddress; // + strAppendingURL;
                        strPostMethod       = "POST";
                        strJobAction        = "DELETE";
                        strHistoricFileName = clsPackage.FileName;
                        intJobAction        = (int)ClassStaticData.FileMode.DeleteFileMode;

                        intDeletes += 1;
                        break;
                    }

                    if (strJobAction == "ADD")
                    {
                        /*************************************************************************/
                        //Always get job description and tracking information first.
                        /*************************************************************************/
                        DataTable dtJobDescription = clsData.GetDescriptionDT(intReqID, intReqEmediaID);
                        DataRow   drJobDescription = dtJobDescription.Rows[0];

                        //drJobDescription.Read();
                        strChildMedia   = drJobDescription["ChildMedia"].ToString();
                        blnIsScraped    = Convert.ToBoolean(drJobDescription["IsScraped"]);
                        strTitle        = clsFormat.GetDynamicRsFieldValue(dt.Rows[intRows]["title"].ToString(), dt.Rows[intRows]["title"].GetType().ToString(), "TITLE", 59, intReqID, clsPackage.EmediaID, ClassStaticData.MASTER_SOURCE, clsPackage.ParamUsed, CLASS_NAME, blnIsScraped);
                        strHeader       = clsFormat.GetDynamicRsFieldValue(drJobDescription["header"].ToString(), drJobDescription["header"].GetType().ToString(), "HEADER", 59, intReqID, clsPackage.EmediaID, ClassStaticData.MASTER_SOURCE, clsPackage.ParamUsed, CLASS_NAME, blnIsScraped);
                        strRequirements = clsFormat.GetDynamicRsFieldValue(drJobDescription["requirements"].ToString(), drJobDescription["requirements"].GetType().ToString(), "REQUIREMENTS", 59, intReqID, clsPackage.EmediaID, ClassStaticData.MASTER_SOURCE, clsPackage.ParamUsed, CLASS_NAME, blnIsScraped);
                        strDuties       = clsFormat.GetDynamicRsFieldValue(drJobDescription["duties"].ToString(), drJobDescription["duties"].GetType().ToString(), "DUTIES", 59, intReqID, clsPackage.EmediaID, ClassStaticData.MASTER_SOURCE, clsPackage.ParamUsed, CLASS_NAME, blnIsScraped);
                        strFooter       = clsFormat.GetDynamicRsFieldValue(drJobDescription["footer"].ToString(), drJobDescription["footer"].GetType().ToString(), "FOOTER", 59, intReqID, clsPackage.EmediaID, ClassStaticData.MASTER_SOURCE, clsPackage.ParamUsed, CLASS_NAME, blnIsScraped);
                        //drJobDescription.Close();
                        dtJobDescription.Dispose();
                        dtJobDescription = null;
                        drJobDescription = null;

                        strApplyURL = clsMems.GetDirectURL(intReqEmediaID.ToString(), Convert.ToByte(dt.Rows[intRows]["apply_statement_indicator"]), dt.Rows[intRows]["url_address"].ToString(), false, clsPackage.EmediaID);
                        strImgTrack = string.Empty;
                        clsFormat.GetMediaTracking(intReqEmediaID, Convert.ToBoolean(dt.Rows[intRows]["Provisioned"]), Convert.ToBoolean(dt.Rows[intRows]["MediaTracking"]), ref strApplyURL, ref strImgTrack);
                        /*************************************************************************/

                        sbJobDescription.Append(clsFormat.ParagraphFields(strHeader, strRequirements, strDuties, strFooter) + strImgTrack);
                    }

                    XmlNode JobNumber = doc.CreateElement("Job_" + intJobCount.ToString());
                    HodesNode.AppendChild(JobNumber);

                    XmlNode ReqEmID = doc.CreateElement("ReqEmediaID");
                    ReqEmID.AppendChild(doc.CreateTextNode(intReqEmediaID.ToString()));
                    JobNumber.AppendChild(ReqEmID);

                    XmlNode ReqID = doc.CreateElement("ReqID");
                    ReqID.AppendChild(doc.CreateTextNode(intReqID.ToString()));
                    JobNumber.AppendChild(ReqID);

                    XmlNode JobAction = doc.CreateElement("JobAction");
                    JobAction.AppendChild(doc.CreateTextNode(strJobAction));
                    JobNumber.AppendChild(JobAction);

                    XmlNode PostMethod = doc.CreateElement("PostMethod");
                    PostMethod.AppendChild(doc.CreateTextNode(strPostMethod));
                    JobNumber.AppendChild(PostMethod);

                    XmlNode AppendingURL = doc.CreateElement("AppendingURL");
                    AppendingURL.AppendChild(doc.CreateCDataSection(strAppendingURL));
                    JobNumber.AppendChild(AppendingURL);

                    XmlNode PostingParam = doc.CreateElement("PostingParam");
                    PostingParam.AppendChild(doc.CreateTextNode("job="));
                    JobNumber.AppendChild(PostingParam);

                    XmlNode ActualJob = doc.CreateElement("ActualJob");
                    JobNumber.AppendChild(ActualJob);

                    XmlNode jobNode = doc.CreateElement("job");
                    ActualJob.AppendChild(jobNode);

                    XmlNode api_user = doc.CreateElement("api_user");
                    api_user.AppendChild(doc.CreateTextNode(strAPIUser));
                    jobNode.AppendChild(api_user);

                    XmlNode api_key = doc.CreateElement("api_key");
                    api_key.AppendChild(doc.CreateTextNode(strAPIKey));
                    jobNode.AppendChild(api_key);

                    XmlNode id = doc.CreateElement("id");
                    id.AppendChild(doc.CreateTextNode(intReqEmediaID.ToString()));
                    jobNode.AppendChild(id);

                    XmlNode title = doc.CreateElement("title");
                    title.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["title"].ToString()));
                    jobNode.AppendChild(title);

                    XmlNode action = doc.CreateElement("action");
                    action.AppendChild(doc.CreateTextNode(strJobAction));
                    jobNode.AppendChild(action);

                    XmlNode categories = doc.CreateElement("categories");
                    categories.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["function_map"].ToString()));
                    jobNode.AppendChild(categories);

                    XmlNode ismanagement = doc.CreateElement("is_management");
                    ismanagement.AppendChild(doc.CreateTextNode(dt.Rows[intRows]["is_management"].ToString()));
                    jobNode.AppendChild(ismanagement);

                    XmlNode compensation = doc.CreateElement("compensation_range");
                    compensation.AppendChild(doc.CreateCDataSection(strCompensation));
                    jobNode.AppendChild(compensation);

                    XmlNode descriptionNode = doc.CreateElement("description");
                    descriptionNode.AppendChild(doc.CreateCDataSection(sbJobDescription.ToString()));
                    jobNode.AppendChild(descriptionNode);

                    XmlNode requirementsNode = doc.CreateElement("requirements");
                    requirementsNode.AppendChild(doc.CreateCDataSection(string.Empty));
                    jobNode.AppendChild(requirementsNode);

                    XmlNode applyUrlNode = doc.CreateElement("apply_url");
                    applyUrlNode.AppendChild(doc.CreateCDataSection(strApplyURL));
                    jobNode.AppendChild(applyUrlNode);

                    XmlNode locationNode = doc.CreateElement("location");

                    XmlNode locationid = doc.CreateElement("id");
                    locationid.AppendChild(doc.CreateTextNode(dt.Rows[intRows]["location_id"].ToString()));
                    locationNode.AppendChild(locationid);

                    XmlNode namenode = doc.CreateElement("name");
                    namenode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["hotel_name"].ToString()));
                    locationNode.AppendChild(namenode);

                    XmlNode addressnode = doc.CreateElement("address");
                    addressnode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["hotel_address"].ToString()));
                    locationNode.AppendChild(addressnode);

                    XmlNode citynode = doc.CreateElement("city");
                    citynode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["hotel_city"].ToString()));
                    locationNode.AppendChild(citynode);

                    XmlNode statenode = doc.CreateElement("state_or_province");
                    statenode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["hotel_state"].ToString()));
                    locationNode.AppendChild(statenode);

                    XmlNode zipnode = doc.CreateElement("postal_code");
                    zipnode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["hotel_zip"].ToString()));
                    locationNode.AppendChild(zipnode);

                    XmlNode countrynode = doc.CreateElement("country_id");
                    countrynode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["hotel_country"].ToString()));
                    locationNode.AppendChild(countrynode);

                    XmlNode phonenode = doc.CreateElement("telephone");
                    phonenode.AppendChild(doc.CreateCDataSection(string.Empty));
                    locationNode.AppendChild(phonenode);

                    XmlNode brand_id = doc.CreateElement("brand_id");
                    brand_id.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["brand_id"].ToString()));
                    locationNode.AppendChild(brand_id);

                    XmlNode url = doc.CreateElement("url");
                    url.AppendChild(doc.CreateCDataSection(string.Empty));
                    locationNode.AppendChild(url);

                    XmlNode hotel_profile = doc.CreateElement("description");
                    hotel_profile.AppendChild(doc.CreateCDataSection(string.Empty));
                    locationNode.AppendChild(hotel_profile);

                    jobNode.AppendChild(locationNode);

                    XmlNode userNode = doc.CreateElement("user");

                    XmlNode useremail = doc.CreateElement("email");
                    useremail.AppendChild(doc.CreateTextNode(dt.Rows[intRows]["user_email"].ToString()));
                    userNode.AppendChild(useremail);

                    XmlNode firstnamenode = doc.CreateElement("first_name");
                    firstnamenode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["user_first"].ToString()));
                    userNode.AppendChild(firstnamenode);

                    XmlNode lastnamenode = doc.CreateElement("last_name");
                    lastnamenode.AppendChild(doc.CreateCDataSection(dt.Rows[intRows]["user_last"].ToString()));
                    userNode.AppendChild(lastnamenode);

                    XmlNode usertitle = doc.CreateElement("title");
                    usertitle.AppendChild(doc.CreateCDataSection(string.Empty));
                    userNode.AppendChild(usertitle);

                    XmlNode usertelephone = doc.CreateElement("telephone");
                    usertelephone.AppendChild(doc.CreateCDataSection(string.Empty));
                    userNode.AppendChild(usertelephone);

                    jobNode.AppendChild(userNode);

                    if (clsData.SetProcessedData(intReqEmediaID, clsPackage.Guid, intAutoFeedID, intJobAction, strHistoricFileName, clsPackage.ParamUsed, clsPackage.UserID, clsPackage.OverrideAddress, clsPackage.RunType, clsPackage.EmediaID, intClientID, clsPackage.SubID, clsPackage.Machine, clsPackage.HodesFeed, clsPackage.TotalJobCount, clsPackage.UsesSlotQty, clsPackage.DeliveryAddress, intAdds, intUpdates, intDeletes, intJobCount, strChildMedia, clsPackage.MultiFile) > 0)
                    {
                        intRows += 1;
                    }
                    else
                    {
                        ClassStaticData.EmailMessage(ClassStaticData.GetFromEmail, ClassStaticData.GetDevEmail, string.Empty, ClassStaticData.Msg_UnexpectedError + "|clsData.SetProcessedData returned 0.", "ProcessGuid: " + clsPackage.Guid + "\r\nAutoFeedID: " + clsPackage.AutoFeedID.ToString() + "\r\nFileName: " + clsPackage.FileName + "\r\nParamUsed: " + clsPackage.ParamUsed + "\r\nUserID: " + clsPackage.UserID.ToString() + "\r\nOverridAddress: " + clsPackage.OverrideAddress + "\r\nRunType: " + clsPackage.RunType.ToString() + "\r\nEmediaID: " + clsPackage.EmediaID + "\r\nSubID: " + clsPackage.SubID.ToString() + "\r\nMachine: " + clsPackage.Machine + "\r\nHodesFeed: " + clsPackage.HodesFeed.ToString() + "\r\nTotalJobCount: " + clsPackage.TotalJobCount.ToString() + "\r\nSource: " + CLASS_NAME + "\r\nProcedure: " + PROCEDURE_NAME + "\r\nclsData.SetProcessedData returned 0.\r\n\r\nErrorTime: " + System.DateTime.Now.ToLongTimeString());

                        string    strErrorSource  = "Error source: " + CLASS_NAME;
                        string    strErrorMessage = "clsData.SetProcessedData returned 0.|ORIGINAL_SOURCE" + CLASS_NAME + " --> Error occurred in " + CLASS_NAME + "." + PROCEDURE_NAME + "|REQEMEDIAID" + intReqEmediaID.ToString() + "|ERRORINFOError reported from: " + CLASS_NAME + "." + PROCEDURE_NAME + "|CLASSNAME" + CLASS_NAME + "|FEEDID" + clsPackage.AutoFeedID.ToString() + "|EMEDIAID" + clsPackage.EmediaID + "|ERRORLEVEL4|WRITESTOPLIGHT1|FILENAME" + clsPackage.FileName + "|PARAMUSED" + clsPackage.ParamUsed + "|PARAMTYPE67|PROCESSGUID" + clsPackage.Guid;
                        Exception ex = new Exception(strErrorMessage);
                        ex.Source = strErrorSource;

                        throw ex;
                    }
                } // for (int intRows = 0; intRows < dt.Rows.Count; intRows += 1)

                StringWriter sw = null;

                string strRetVal = string.Empty;

                if (intJobCount > 0)
                {
                    sw = new StringWriter();
                    XmlTextWriter xw = new XmlTextWriter(sw);
                    doc.WriteTo(xw);

                    if (clsData.UpdateXMLFeed(clsPackage.Guid, clsPackage.AutoFeedID, clsMems.GetUTF8ByteData(sw.ToString()), 0) > 0)
                    {
                        strRetVal = "true";
                    }
                    else
                    {
                        strRetVal = "false";
                    }
                }
                else
                {
                    strRetVal = "false";
                }

                sw.Dispose();
                sw = null;

                return(strRetVal);
            }
            catch (Exception ex)
            {
                ex.Data.Add("ORIGINAL_SOURCE", ex.Source + " --> Error occurred in " + CLASS_NAME + "." + PROCEDURE_NAME);
                ex.Data.Add("CLASSNAME", ex.TargetSite.DeclaringType.ToString());
                ex.Data.Add("ERRORINFO", "Error reported from: " + ex.TargetSite.DeclaringType.ToString() + "|" + ex.TargetSite.ToString());
                ex.Data.Add("REQEMEDIAID", intReqEmediaID.ToString());   // converted to string to avoid boxing.
                ex.Data.Add("REQUISITIONID", intReqID.ToString());       // converted to string to avoid boxing.
                ex.Data.Add("CLIENTID", intClientID.ToString());         // converted to string to avoid boxing.
                ex.Data.Add("SUBID", clsPackage.SubID.ToString());       // converted to string to avoid boxing.
                ex.Data.Add("FEEDID", clsPackage.AutoFeedID.ToString()); // converted to string to avoid boxing.
                ex.Data.Add("EMEDIAID", clsPackage.EmediaID);
                ex.Data.Add("ERRORLEVEL", "4");                          // converted to string to avoid boxing.
                ex.Data.Add("WRITESTOPLIGHT", "1");                      // converted to string to avoid boxing.
                ex.Data.Add("FILENAME", clsPackage.FileName);
                ex.Data.Add("PARAMUSED", clsPackage.ParamUsed);
                ex.Data.Add("PARAMTYPE", "58"); // converted to string to avoid boxing.
                ex.Data.Add("PROCESSGUID", clsPackage.Guid);

                ClassErrors clsErr = new ClassErrors(ex.Message, ex, ex.Source, ex.Data);

                try
                {
                    clsData.ReportError(clsErr.ErrorInfo, clsErr.Source, clsErr.Message, clsErr.LineNumber, clsErr.AfErrorNumber, clsErr.ErrorNumber, clsErr.ConnectionString, clsErr.Filename, clsErr.AutoFeedID, clsErr.EmediaID, clsErr.CIDList, clsErr.DeliveryType, clsErr.EmailAddress, clsErr.FTPAddress, clsErr.URLAddress, clsErr.LocalCopyAdddress, clsErr.ParamUsed, clsErr.RequisitionID, clsErr.ReqEmediaID, ClassStaticData.MachineName, clsErr.StoredProcedure, clsErr.ParamType, clsErr.ErrorLevel, clsErr.WriteStopLight, string.Empty, clsErr.UsesSubID, clsErr.SubID, clsErr.ProcessGuid, clsErr.GetStackTrace, clsErr.GetStackFrames, clsErr.InnerExceptionMessage, clsErr.ExceptionType, clsErr.ColumnNumber);
                }
                catch (Exception ex2)
                {
                    ClassStaticData.EmailMessage(ClassStaticData.GetFromEmail, ClassStaticData.GetDevEmail, string.Empty, ClassStaticData.Msg_UnexpectedError, "Original error follows:\r\n\r\nFrom: " + System.Reflection.Assembly.GetExecutingAssembly().ToString() + "\r\nConnectionString: " + ClassStaticData.MASTER_SOURCE + "\r\n\r\n" + "Error Message: " + ex.Message + "\r\n\r\n" + ex.Source + "\r\n\r\nNew error follows:\r\n" + ex2.Message + "\r\n" + ex2.Source + "\r\nNew error inner exception: " + ex2.InnerException + "\r\n" + "\r\n\r\nAdditional information follows:\r\nAutoFeedID: " + clsErr.AutoFeedID.ToString() + "\r\n\r\nEmediaID: " + clsErr.EmediaID + "\r\n\r\nCIDList: " + clsErr.CIDList + "\r\n\r\nErrorTime: " + System.DateTime.Now.ToLongTimeString());
                }
                return("false");
            }
            finally
            {
                if (clsFormat != null)
                {
                    clsFormat.Dispose();
                }

                clsFormat = null;

                if (clsXML != null)
                {
                    clsXML.Dispose();
                }

                clsXML = null;

                if (clsData != null)
                {
                    clsData.Dispose();
                }

                clsData = null;

                dt.Dispose();
                dt = null;
            }
        } // public override string ExecFeed(object objPackage)