예제 #1
0
        private void ProcessRowData(string textRow, Action <string> callback)
        {
            //string[] rowArray = textRow.Split('\t');

            //List<Model.PropertyDetail> propertyDetail = new List<Model.PropertyDetail>();
            Model.PropertyDetail propertyDtls = new Model.PropertyDetail();
            try
            {
                if (textRow.Substring(0, 1) != "\t" && textRow.Trim().Length > 0 && DataExtraction.CheckIfHeaderLine(textRow))
                {
                    HeaderRow(textRow, callback);
                }
                else if (textRow.Trim().Length > 0 && !DataExtraction.CheckIfHeaderLine(textRow))
                {
                    PropertyInfo(textRow);
                    EventData(textRow, callback);
                    PropertyDetails(textRow, propertyDtls, callback);
                }
            }
            catch (Exception e)
            {
                callback(e.ToString());
                //throw;
            }
        }
            public static int InsertPropertyDetail(Model.PropertyDetail propertyDetail)
            {
                int id = 0;

                #region insert

                var cn = OpenOrGetConnection();
                {
                    using (OleDbCommand cmd = new OleDbCommand("SELECT tblPropertyDetail.propertyDetailID FROM tblPropertyDetail WHERE tblPropertyDetail.propertyID =(?) AND tblPropertyDetail.eventTypeID =(?) AND tblPropertyDetail.eventYear =(?) AND tblPropertyDetail.debtor =(?) AND tblPropertyDetail.purchaserID =(?) AND tblPropertyDetail.tranxDate =(?) AND tblPropertyDetail.cob =(?) AND tblPropertyDetail.notes =(?) ", cn))
                    {
                        cmd.Parameters.AddWithValue("@propId", propertyDetail.PropertyID);
                        cmd.Parameters.AddWithValue("@eventId", propertyDetail.EventTypeID);
                        cmd.Parameters.AddWithValue("@eventYr", propertyDetail.EventYear);
                        cmd.Parameters.AddWithValue("@deptor", propertyDetail.Debtor);
                        cmd.Parameters.AddWithValue("@purchasId", propertyDetail.PurchaserID);
                        cmd.Parameters.Add("@date", OleDbType.Date).Value = (propertyDetail.TranxDate != DateTime.MinValue)? (object)propertyDetail.TranxDate : DBNull.Value;
                        //cmd.Parameters.AddWithValue("@date", propertyDetail.TranxDate.ToString("yyyyMMdd"));
                        cmd.Parameters.AddWithValue("@cob", propertyDetail.COB);
                        cmd.Parameters.AddWithValue("@notes", propertyDetail.Notes);
                        cmd.ExecuteNonQuery();
                        id = Convert.ToInt32(cmd.ExecuteScalar());
                    }
                    if (id != 0)
                    {
                        return(id);
                    }
                    using (OleDbCommand cmd = new OleDbCommand(
                               "INSERT INTO tblPropertyDetail (propertyID, eventTypeID, eventYear, debtor, purchaserID, tranxDate, cob, notes) VALUES (@propId, @eventId, @eventYr, @deptor, @purchasId, @date, @cob, @notes)",
                               cn))
                    {
                        cmd.Parameters.AddWithValue("@propId", propertyDetail.PropertyID);
                        cmd.Parameters.AddWithValue("@eventId", propertyDetail.EventTypeID);
                        cmd.Parameters.AddWithValue("@eventYr", propertyDetail.EventYear);
                        cmd.Parameters.AddWithValue("@deptor", propertyDetail.Debtor);
                        cmd.Parameters.AddWithValue("@purchasId", propertyDetail.PurchaserID);
                        cmd.Parameters.Add("@date", OleDbType.Date).Value = (propertyDetail.TranxDate != DateTime.MinValue)? (object)propertyDetail.TranxDate : DBNull.Value;
                        //cmd.Parameters.AddWithValue("@date", propertyDetail.TranxDate.ToString("yyyyMMdd"));
                        cmd.Parameters.AddWithValue("@cob", propertyDetail.COB);
                        cmd.Parameters.AddWithValue("@notes", propertyDetail.Notes);
                        cmd.ExecuteNonQuery();

                        cmd.CommandText = "SELECT @@IDENTITY";
                        id = Convert.ToInt32(cmd.ExecuteScalar());
                    }
                }

                #endregion

                return(id);
            }