private ReturnedValues RunStoredProcedure(String[] keyPartArray, String storedProcedureName) { OleDbCommand dbCommand = null; Int32 keyIndex = 0; ReturnedValues returnValues; try { WriteLogFile("RunStoredProcedure() -->> ", "is STARTED"); dbCommand = connectSPDatabase.CreateCommand(); dbCommand.CommandType = CommandType.StoredProcedure; dbCommand.CommandText = storedProcedureName; OleDbCommandBuilder.DeriveParameters(dbCommand); foreach (DbParameter dbParameter in dbCommand.Parameters) { if (dbParameter.Direction != ParameterDirection.ReturnValue && dbParameter.Direction != ParameterDirection.Output && keyPartArray.Length > keyIndex) { dbParameter.Value = keyPartArray[keyIndex]; keyIndex++; } } foreach (DbParameter dbParameter in dbCommand.Parameters) { if (dbParameter.Value == null) { dbParameter.Value = "0"; } } dbCommand.ExecuteNonQuery(); returnValues = new ReturnedValues(); returnValues.boolValue = Convert.ToBoolean(dbCommand.Parameters[Rsc.StoredPrcBoolVal].Value); returnValues.description = dbCommand.Parameters[Rsc.StoredPrcDescVal].Value.ToString(); WriteLogFile("RunStoredProcedure() -->> ", "is successfully FINISHED."); return returnValues; } catch (Exception ex) { WriteLogFile("RunStoredProcedure() -->> ", ex); return null; } }
private void ParseKey_CallSP(List<RowProperties> rowPropList, String filterName, String target, String storedProcName, String filterID) { String key; String[] keyPartArray; ReturnedValues returnValues; String queryInsertMsg; try { WriteLogFile("ParseKey_CallSP() -->> ", "is STARTED"); returnValues = new ReturnedValues(); foreach (RowProperties rowProp in rowPropList) { String lastPosition = rowProp.ID; RefreshFilter(filterID, lastPosition); key = rowProp.primaryKeyValue; WriteLogFile(storedProcName + " procedure will run this key", key); key = key.Remove(key.LastIndexOf('-')); keyPartArray = key.Split(new Char[] { '-' }, StringSplitOptions.RemoveEmptyEntries); returnValues = RunStoredProcedure(keyPartArray, storedProcName); if (returnValues != null) { if (returnValues.boolValue) { DateTime tempdate = Convert.ToDateTime(rowProp.dateTime); queryInsertMsg = " INSERT INTO " + Rsc.ActionMsgTbl + "(" + Rsc.ActionMsg_FilterName + "," + Rsc.ActionMsg_DateTime + "," + Rsc.ActionMsg_Category + "," + Rsc.ActionMsg_UserName + "," + Rsc.ActionMsg_ComputerName + "," + Rsc.ActionMsg_WindowName + "," + Rsc.ActionMsg_PrimaryKeyValue + "," + Rsc.ActionMsg_DataWindowName + "," + Rsc.ActionMsg_RecordNumber + "," + Rsc.ActionMsg_Description + "," + Rsc.ActionMsg_AlertTime + ")" + " VALUES ('" + filterName + "','" + tempdate.ToString(dateFormat) + "','" + rowProp.category + "','" + rowProp.userName + "','" + rowProp.computerName + "','" + rowProp.windowName + "','" + rowProp.primaryKeyValue + "','" + rowProp.dataWindowName + "','" + rowProp.recordNumber + "','" + returnValues.description + "','" + DateTime.Now.ToString(dateFormat) + "')"; WriteLogFile("Insert table ", queryInsertMsg); Database.ExecuteNonQuery(dataBaseNameforMainServer, queryInsertMsg); WriteLogFile("ParseKey_CallSP() -->> ", "is successfully FINISHED."); } } } } catch (Exception ex) { WriteLogFile("ParseKey_CallSP() -->> ", ex); } }