//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #endregion #region Public Query method //=================================================================================== /// <summary> /// This method executes a query /// </summary> /// <param name="QueryData"> Evado.Integration.Model.EiData wiht query parameters.</param> /// <returns> Evado.Integration.Model.EiData object</returns> //----------------------------------------------------------------------------------- public Evado.Integration.Model.EiData ProcessQuery( Evado.Integration.Model.EiData QueryData) { this.LogMethod("ProcessQuery method."); this.LogDebug("Settings.LoggingLevel: " + this.ClassParameters.LoggingLevel); this.LogDebug("QueryType: " + QueryData.QueryType); this.writeProcessLog("Integration Service - Commence processing query data."); // // Initialise the methods variables and objects. // Evado.Integration.Model.EiData resultData = new Evado.Integration.Model.EiData( ); Evado.Digital.Model.EdQueryParameters queryParameters = new Evado.Digital.Model.EdQueryParameters( ); // // Validate that the query data has parameters. // if (QueryData.ParameterList == null) { this.writeProcessLog("Integration Service - Project identifier not provided."); this.LogDebug("Parameter list is null."); resultData.EventCode = Evado.Integration.Model.EiEventCodes.Integration_Import_Parameter_Error; resultData.ErrorMessage = "Integration Service - Parameter list is empty."; return(resultData); } if (QueryData.ParameterList.Count == 0) { this.writeProcessLog("Integration Service - Parameter list is empty."); this.LogDebug("Parameter list is empty."); resultData.EventCode = Evado.Integration.Model.EiEventCodes.Integration_Import_Parameter_Error; resultData.ErrorMessage = "Integration Service - Parameter list is empty."; return(resultData); } string projectid = QueryData.GetQueryParameterValue(Evado.Integration.Model.EiQueryParameterNames.Project_Id); // // select the query QueryType // switch (QueryData.QueryType) { default: { resultData.EventCode = EiEventCodes.Integration_Import_Type_Id_Error; resultData.ErrorMessage = Evado.Model.EvStatics.enumValueToString(EiEventCodes.Integration_Import_Type_Id_Error); break; } } this.LogMethodEnd("ProcessQuery"); return(resultData); }//END Query method.
}//END ImportCsvData method. //=================================================================================== /// <summary> /// This method executes a CSV import or export query. /// </summary> /// <param name="UserProfile">Evado.Digital.Model.EdUserProfile object.</param> /// <param name="QueryType">EiQueryTypes: Csv encoded data object.</param> /// <param name="CsvDataList">List of String: Csv encoded data object.</param> /// <returns> Evado.Integration.Model.EiData object</returns> //----------------------------------------------------------------------------------- public Evado.Integration.Model.EiData ImportData( Evado.Digital.Model.EdUserProfile UserProfile, EiQueryTypes QueryType, List <String> CsvDataList) { this.LogMethod("ImportData method."); this.LogDebug("UserProfile: " + UserProfile.CommonName); this.LogDebug("QueryType: " + QueryType); this.writeProcessLog("CSV Import Service - Commence processing query data."); // // Initialise the methods variables and objects. // Evado.Integration.Model.EiData resultData = new Evado.Integration.Model.EiData( ); Evado.Digital.Model.EdQueryParameters queryParameters = new Evado.Digital.Model.EdQueryParameters( ); // // Get extract the data from the CSV file. // EiData ImportData = this.getDataObjectFromCsv( CsvDataList, QueryType); /* * if ( this.Settings.LoggingLevel > 4 ) * { * foreach ( EiColumnParameters parm in ImportData.Columns ) * { * string content = String.Format ( "Parm: Field: {0}, Type: {1}, Index: {2}", parm.EvadoFieldId, parm.DataType, parm.Index ); * this.LogValue ( content ); * } * } */ // // Execute the query. // resultData = EI_Services.ProcessQuery(ImportData); this.LogClass(EI_Services.Log); this._ProcessLog.AppendLine(resultData.ProcessLog); this.LogMethodEnd("ImportData"); return(resultData); }//END ImportCsvData method.
//+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++ #endregion #region Public Query method //=================================================================================== /// <summary> /// This method executes a CSV import or export query. /// </summary> /// <param name="QueryData"> Evado.Integration.Model.EiData.</param> /// <returns>List of String</returns> //----------------------------------------------------------------------------------- public List <String> ExportData( Evado.Integration.Model.EiData QueryData) { this.LogMethod("ExportData method."); this.LogDebug("QueryType: " + QueryData.QueryType); this.writeProcessLog("CSV Export Service - Commence processing query data."); // // Initialise the methods variables and objects. // Evado.Integration.Model.EiData resultData = new Evado.Integration.Model.EiData( ); Evado.Digital.Model.EdQueryParameters queryParameters = new Evado.Digital.Model.EdQueryParameters( ); List <String> CsvOutput = new List <string> ( ); // // Query the Ei service // resultData = EI_Services.ProcessQuery(QueryData); this.LogClass(EI_Services.Log); this._ProcessLog.AppendLine(resultData.ProcessLog); if (resultData.DataRows == null) { this.LogDebug("No data was generated by the query."); this.writeProcessLog("No data was generated by the query."); return(new List <string> ( )); } // // Convert the result data object into a CSV file. // var result = this.getCsvFromDataObject(resultData); this.LogMethodEnd("ExportData"); return(result); }//END ImportCsvData method.