Example #1
0
        /// <summary>
        ///
        /// </summary>
        public void Load(System.Data.SqlClient.SqlConnection connection)
        {
            using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand())
            {
                cmd.Connection  = connection;
                cmd.CommandText = "SELECT GroupID, AccountID, Name, Description, Password, Startup, PWLastUpdateTime, PWType, CreateTime, dModifyTime, iFailTimes, dLockTime, cRoleID, AD_CheckFlag, cCallID, cPWD FROM SecurityUserAccount WHERE ";

                System.Data.SqlClient.SqlDataReader reader = cmd.ExecuteReader();

                if (true == reader.Read())
                {
                    _groupID     = reader.GetString(0);
                    _accountID   = reader.GetString(1);
                    _name        = reader.GetString(2);
                    _description = reader.GetString(3);
                    //_password = reader.GetString(4);
                    _password         = (byte[])reader[4];
                    _startup          = reader.GetBoolean(5);
                    _pWLastUpdateTime = reader.GetDateTime(6);
                    _pWType           = reader.GetInt16(7);
                    _createTime       = reader.GetDateTime(8);
                    _dModifyTime      = reader.GetDateTime(9);
                    _iFailTimes       = reader.GetInt16(10);
                    _dLockTime        = reader.GetDateTime(11);
                    _cRoleID          = reader.GetInt16(12);
                    _aD_CheckFlag     = reader.GetBoolean(13);
                    _cCallID          = reader.GetString(14);
                    _cPWD             = reader.GetString(15);
                }

                reader.Close();
            }
        }
Example #2
0
        /// <summary>
        ///
        /// </summary>
        public void Load(System.Data.SqlClient.SqlConnection connection)
        {
            using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand())
            {
                cmd.Connection  = connection;
                cmd.CommandText = "SELECT DMSRoleID, DMSRoleIDManaged FROM DMSRoleManage WHERE ";

                System.Data.SqlClient.SqlDataReader reader = cmd.ExecuteReader();

                if (true == reader.Read())
                {
                    _dMSRoleID        = reader.GetInt16(0);
                    _dMSRoleIDManaged = reader.GetInt16(1);
                }

                reader.Close();
            }
        }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        public void Load(System.Data.SqlClient.SqlConnection connection)
        {
            using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand())
            {
                cmd.Connection  = connection;
                cmd.CommandText = "SELECT MCID, GroupID, Model, MCNo, MaintainID, IPAddress, PU, LU, DevicePoint, SourceConnection, ATMBandWidth, SDGatewayID, BandWidth, MCAccountID, MCFunc, SystemOS, OpenTime, bPoint, DetailAddress, Maintain_Money, Maintain_Sys, Maintain_Fix, BuyCaseNo, BuyDate, OpenDate, InstallDate, Memo, LoginGorupID FROM MCData WHERE ";

                System.Data.SqlClient.SqlDataReader reader = cmd.ExecuteReader();

                if (true == reader.Read())
                {
                    _mCID             = reader.GetString(0);
                    _groupID          = reader.GetString(1);
                    _model            = reader.GetString(2);
                    _mCNo             = reader.GetString(3);
                    _maintainID       = reader.GetString(4);
                    _iPAddress        = reader.GetString(5);
                    _pU               = reader.GetString(6);
                    _lU               = reader.GetString(7);
                    _devicePoint      = reader.GetString(8);
                    _sourceConnection = reader.GetString(9);
                    _aTMBandWidth     = reader.GetInt32(10);
                    _sDGatewayID      = reader.GetString(11);
                    _bandWidth        = reader.GetInt32(12);
                    _mCAccountID      = reader.GetString(13);
                    _mCFunc           = reader.GetInt16(14);
                    _systemOS         = reader.GetInt16(15);
                    _openTime         = reader.GetString(16);
                    _bPoint           = reader.GetString(17);
                    _detailAddress    = reader.GetString(18);
                    _maintain_Money   = reader.GetString(19);
                    _maintain_Sys     = reader.GetString(20);
                    _maintain_Fix     = reader.GetString(21);
                    _buyCaseNo        = reader.GetString(22);
                    _buyDate          = reader.GetDateTime(23);
                    _openDate         = reader.GetDateTime(24);
                    _installDate      = reader.GetDateTime(25);
                    _memo             = reader.GetString(26);
                    _loginGorupID     = reader.GetString(27);
                }

                reader.Close();
            }
        }
Example #4
0
        public SupplierListInfo(SqlDataReader reader)
        {
            //[Id], Guid,Email,[Name],CompanyName, Address, PhoneNumber, Status,FoundedYear,AllowMatch,Balance,GeneralScore,Priority

            id = reader.GetInt32(0);
            guid = reader.GetString(1);
            email = reader.GetString(2);
            name = reader.IsDBNull(3) ? "" : reader.GetString(3);
            companyName = reader.IsDBNull(4) ? "" : reader.GetString(4);
            address = reader.IsDBNull(5) ? "" : reader.GetString(5);
            phoneNumber = reader.IsDBNull(6) ? "" : reader.GetString(6);
            status = (CompanyStatus)(reader.GetInt16(7));
            foundedYear = reader.GetInt16(8);
            regDate = reader.GetDateTime(9);
            allowMatch = reader.GetString(10) == "1";
            balance = Convert.ToSingle(reader.GetValue(11));
            generalScore = Convert.ToSingle(reader.GetValue(12));
            priority = reader.GetInt32(13);
        }
 private List<Product> GetProducts(SqlDataReader reader)
 {
     var products = new List<Product>();
     while (reader.Read())
     {
         products.Add(new Product
         {
             ProductName = reader.GetString(1),
             UnitsInStock = reader.GetInt16(6)
         });
     }
     return (products);
 }
Example #6
0
        /// <summary>
        ///
        /// </summary>
        public void Load(System.Data.SqlClient.SqlConnection connection)
        {
            using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand())
            {
                cmd.Connection  = connection;
                cmd.CommandText = "SELECT DateTime, AccountID, Type, Status, TxDateTime, TransDateTime FROM LinetStatus WHERE ";

                System.Data.SqlClient.SqlDataReader reader = cmd.ExecuteReader();

                if (true == reader.Read())
                {
                    _dateTime      = reader.GetDateTime(0);
                    _accountID     = reader.GetString(1);
                    _type          = reader.GetInt16(2);
                    _status        = reader.GetInt16(3);
                    _txDateTime    = reader.GetString(4);
                    _transDateTime = reader.GetString(5);
                }

                reader.Close();
            }
        }
Example #7
0
 public static CategoryInfo CopyCategoryToBO(SqlDataReader rdr)
 {
     //CAT_ID, CAT_NAME, CAT_STATUS, CAT_MODERATION, CAT_SUBSCRIPTION, CAT_ORDER
     CategoryInfo category = new CategoryInfo
     {
         Id = rdr.GetInt32(0),
         Name = rdr.SafeGetString(1),
         Status = rdr.GetInt16(2),
         ModerationLevel = rdr.SafeGetInt32(3),
         SubscriptionLevel = rdr.SafeGetInt32(4),
         Order = rdr.GetInt32(5)
     };
     return category;
 }
Example #8
0
        public static ForumInfo CopyForumToBO(SqlDataReader rdr)
        {
            //"F.FORUM_ID,F.CAT_ID,F.F_STATUS,F.F_SUBJECT,F.F_URL,F.F_TOPICS" +
            //",F.F_COUNT,F.F_LAST_POST,F.F_PRIVATEFORUMS,F.F_TYPE,F.F_LAST_POST_AUTHOR,F.F_A_TOPICS,F.F_A_COUNT,F.F_MODERATION" +
            //",F.F_SUBSCRIPTION,F.F_ORDER, F.F_COUNT_M_POSTS,F.F_LAST_POST_TOPIC_ID,F.F_LAST_POST_REPLY_ID,F.F_POLLS,F.F_DESCRIPTION" +
            //",F.F_L_ARCHIVE,F.F_ARCHIVE_SCHED,T.T_SUBJECT,M.M_NAME ";
            ForumInfo forum = new ForumInfo
            {
                Id = rdr.GetInt32(0),
                CatId = rdr.GetInt32(1),
                Status = rdr.GetInt16(2),
                Subject = rdr.SafeGetString(3),
                Url = rdr.SafeGetString(4),
                TopicCount = rdr.GetInt32(5),
                PostCount = rdr.GetInt32(6),
                LastPostDate = rdr.GetSnitzDate(7),
                AuthType = rdr.SafeGetInt32(8),
                Type = rdr.GetInt16(9),
                LastPostAuthorId = rdr.SafeGetInt32(10),
                ArchivedTopicCount = rdr.SafeGetInt32(11),
                ArchivedPostCount = rdr.SafeGetInt32(12),
                ModerationLevel = rdr.SafeGetInt32(13),
                SubscriptionLevel = rdr.SafeGetInt32(14),
                Order = rdr.GetInt32(15),
                UpdatePostCount = rdr.GetInt16(16) == 1,
                LastPostTopicId = rdr.SafeGetInt32(17),
                LastPostReplyId = rdr.SafeGetInt32(18),
                AllowPolls = rdr.GetInt32(19) == 1,
                Description = rdr.SafeGetString(20),
                LastArchived = rdr.GetSnitzDate(21),
                ArchiveFrequency = rdr.SafeGetInt32(22),
                LastPostSubject = rdr.SafeGetString(23),
                LastPostAuthorName = rdr.SafeGetString(24)
            };

            return forum;
        }
        SqlJobMetrics build_sql_job_metric_from_reader(SqlDataReader reader)
        {
            var metric = new SqlJobMetrics();

            metric.job_name = reader.GetString(0);
            metric.message = reader.GetString(1);

            var job_outcome_key = reader.GetByte(2);
            metric.job_status = get_job_outcome_from_key(job_outcome_key);

            metric.last_run = reader.GetDateTime(3);
            metric.job_step = reader.GetInt16(4);

            return metric;
        }
Example #10
0
        /// <summary>
        /// Creates a new instance of the ViewProductoObjetivo class and populates it with data from the specified SqlDataReader.
        /// </summary>
        private static ViewProductoObjetivoInfo MakeViewProductoObjetivo(SqlDataReader dataReader)
        {
            ViewProductoObjetivoInfo viewProductoObjetivo = new ViewProductoObjetivoInfo();

            if (dataReader.IsDBNull(Cod_Producto) == false)
                viewProductoObjetivo.Cod_Producto = dataReader.GetInt32(Cod_Producto);
            if (dataReader.IsDBNull(Cod_Trilogia) == false)
                viewProductoObjetivo.Cod_Trilogia = dataReader.GetInt32(Cod_Trilogia);
            if (dataReader.IsDBNull(Producto) == false)
                viewProductoObjetivo.Producto = dataReader.GetString(Producto);
            if (dataReader.IsDBNull(Cantidad) == false)
                viewProductoObjetivo.Cantidad = dataReader.GetInt16(Cantidad);

            return viewProductoObjetivo;
        }
Example #11
0
        public static ForumInfo CopyForumToBO(SqlDataReader rdr)
        {
            ForumInfo forum = new ForumInfo
            {
                Id = rdr.GetInt32(0),
                CatId = rdr.GetInt32(1),
                Status = rdr.GetInt16(2),
                Subject = rdr.SafeGetString(3),
                Url = rdr.SafeGetString(4),
                TopicCount = rdr.GetInt32(5),
                PostCount = rdr.GetInt32(6),
                LastPostDate = rdr.SafeGetString(7).ToDateTime(),
                AuthType = rdr.SafeGetInt32(8),
                Type = rdr.GetInt16(9),
                LastPostAuthorId = rdr.SafeGetInt32(10),
                ArchivedTopicCount = rdr.SafeGetInt32(11),
                ArchivedPostCount = rdr.SafeGetInt32(12),
                ModerationLevel = rdr.SafeGetInt32(13),
                SubscriptionLevel = rdr.SafeGetInt32(14),
                Order = rdr.GetInt32(15),
                UpdatePostCount = rdr.GetInt16(16) == 1,
                LastPostTopicId = rdr.SafeGetInt32(17),
                LastPostReplyId = rdr.SafeGetInt32(18),
                AllowPolls = rdr.GetInt32(19) == 1,
                Description = rdr.SafeGetString(20),
                LastPostSubject = rdr.SafeGetString(21),
                LastPostAuthorName = rdr.SafeGetString(22)
            };

            //if (forum.LastPostAuthorId != null)
            //{
            //    var author = new PostAuthor().GetAuthor(forum.LastPostAuthorId.Value);
            //    forum.LastPostAuthor = author;
            //}
            return forum;
        }
Example #12
0
        //Does not load the fileData column
        public override FileVO ReadRecord(System.Data.SqlClient.SqlDataReader reader)
        {
            FileVO result = new FileVO();

            result.Id   = reader.GetInt32(reader.GetOrdinal(idColumnName));
            result.Name = reader[fileName].ToString();
            DocumentDAO ddao = new DocumentDAO();

            result.Document = ddao.GetItem(reader.GetInt32(reader.GetOrdinal(fileDocumentId)));
            ddao.CloseConnection();
            short valInt = reader.GetInt16(reader.GetOrdinal(fileType));

            result.Type             = (FileVO.FileType)valInt;
            result.AdditionDateTime = reader.GetDateTime(reader.GetOrdinal(fileAdditionDate));

            return(result);
        }
Example #13
0
        /// <summary>
        ///
        /// </summary>
        public void Load(System.Data.SqlClient.SqlConnection connection)
        {
            using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand())
            {
                cmd.Connection  = connection;
                cmd.CommandText = "SELECT DMSRoleID, SysModID, SysFuncID, SysActionID FROM DMSRoleAction WHERE ";

                System.Data.SqlClient.SqlDataReader reader = cmd.ExecuteReader();

                if (true == reader.Read())
                {
                    _dMSRoleID   = reader.GetInt16(0);
                    _sysModID    = reader.GetString(1);
                    _sysFuncID   = reader.GetString(2);
                    _sysActionID = reader.GetString(3);
                }

                reader.Close();
            }
        }
Example #14
0
        /// <summary>
        ///
        /// </summary>
        public void Load(System.Data.SqlClient.SqlConnection connection)
        {
            using (System.Data.SqlClient.SqlCommand cmd = new System.Data.SqlClient.SqlCommand())
            {
                cmd.Connection  = connection;
                cmd.CommandText = "SELECT AccountID, bPassword, iOrder, Kind, Ldate FROM SecurityUserPwd WHERE ";

                System.Data.SqlClient.SqlDataReader reader = cmd.ExecuteReader();

                if (true == reader.Read())
                {
                    _accountID = reader.GetString(0);
                    _bPassword = (byte[])reader[1];
                    _iOrder    = reader.GetInt16(2);
                    _kind      = reader.GetInt32(3);
                    _ldate     = reader.GetDateTime(4);
                }

                reader.Close();
            }
        }
Example #15
0
    // Select a Credit Card ID record to edit
    protected void DropDownListSelectCreditCardID_SelectedIndexChanged(object sender, EventArgs e)
    {
        // Store selected credit card id value into variable
        string tempID = DropDownListSelectCreditCardID.SelectedValue;

        creditCardSelected = true;

        // Create temporary variables to store selected record information
        string tempCardType   = "";
        string tempCardNumber = "";
        Byte   tempExpMonth   = 0;
        Int16  tempExpYear    = 0;

        // Select record from database at selected credit card ID value
        sc.Open();
        String query2 = "SELECT * FROM [Sales].[CreditCard] WHERE [CreditCardID] = @tempid;";

        System.Data.SqlClient.SqlCommand sqlCom2 = new System.Data.SqlClient.SqlCommand(query2, sc);
        sqlCom2.Parameters.AddWithValue("@tempid", tempID);
        sqlCom2.ExecuteNonQuery();

        // Use Reader and assign temporary variables with data from selected record
        System.Data.SqlClient.SqlDataReader reader = sqlCom2.ExecuteReader();
        while (reader.Read())
        {
            tempCardType   = reader.GetString(1);
            tempCardNumber = reader.GetString(2);
            tempExpMonth   = reader.GetByte(3);
            tempExpYear    = reader.GetInt16(4);
        }
        reader.Close();

        //Display selected data in the textboxes in the web form
        DropDownListCardType.SelectedValue = DropDownListCardType.Items.FindByText(tempCardType).Value;
        TextBoxCardNumber.Text             = tempCardNumber;
        DropDownListExpMonth.SelectedValue = DropDownListExpMonth.Items.FindByValue(tempExpMonth.ToString()).Value;
        DropDownListExpYear.SelectedValue  = DropDownListExpYear.Items.FindByValue(tempExpYear.ToString()).Value;

        TextBoxResult.Text = creditCardSelected.ToString();
    }
Example #16
0
 public static bool getFieldValue(SqlDataReader dr, int ind, bool def)
 {
     bool val = def;
     if (!dr.IsDBNull(ind))
     {
         switch (System.Type.GetTypeCode(dr.GetFieldType(ind)))
         {
             case System.TypeCode.Boolean:
                 val = dr.GetBoolean(ind);
                 break;
             case System.TypeCode.Byte:
                 val = System.Convert.ToBoolean(dr.GetByte(ind));
                 break;
             case System.TypeCode.Int16:
                 val = System.Convert.ToBoolean(dr.GetInt16(ind));
                 break;
             case System.TypeCode.Int32:
                 val = System.Convert.ToBoolean(dr.GetInt32(ind));
                 break;
         }
     }
     return val;
 }
Example #17
0
        private static void ReportBuilder(SqlDataReader dr, SqlDataReader drLandDesc, int cropYear, string logoUrl, System.IO.FileStream fs)
        {
            const string METHOD_NAME = "WSCReports.rpfFieldAgronomy.ReportBuilder: ";
            string tmp = null;
            Document document = null;
            PdfWriter writer = null;
            ArrayList values = null;
            PdfPTable table = null;

            float[] tmpLayout = null;
            iTextSharp.text.Paragraph para = null;
            iTextSharp.text.Phrase phrase = null;
            RptAgronomy agronomy = null;
            AgronomyReportEvent pgEvent = null;
            iTextSharp.text.pdf.PdfPCell cell = null;

            Font titleFont = FontFactory.GetFont("HELVETICA", 12F, Font.BOLD);
            Font subTitleFont = FontFactory.GetFont("HELVETICA", 9F, Font.NORMAL);
            Font headerFont = FontFactory.GetFont("HELVETICA", 8F, Font.NORMAL);
            Font normalFont = FontFactory.GetFont("HELVETICA", 8F, Font.NORMAL);
            Font labelFont = FontFactory.GetFont("HELVETICA", 8F, Font.BOLD);

            try {

                while (dr.Read()) {

                    try {

                        if (document == null) {

                            agronomy = WSCField.GetAgronomyData();

                            // IF YOU CHANGE MARGINS, CHANGE YOUR TABLE LAYOUTS !!!
                            //  ***  US LETTER: 612 X 792  ***
                            //document = new Document(PageSize.LETTER);

                            document = new Document(PageSize.LETTER, PortraitPageSize.PgLeftMargin,
                                PortraitPageSize.PgRightMargin, PortraitPageSize.PgTopMargin - 18, PortraitPageSize.PgBottomMargin - 36);//54

                            // we create a writer that listens to the document
                            // and directs a PDF-stream to a file
                            writer = PdfWriter.GetInstance(document, fs);

                            // Attach my override event handler(s)
                            pgEvent = new AgronomyReportEvent();
                            pgEvent.FillEvent(cropYear.ToString(), dr.GetString(dr.GetOrdinal("fld_shid")), dr.GetString(dr.GetOrdinal("fld_business_name")),
                                dr.GetString(dr.GetOrdinal("fld_address1")), dr.GetString(dr.GetOrdinal("fld_address2")), dr.GetString(dr.GetOrdinal("fld_city")),
                                dr.GetString(dr.GetOrdinal("fld_state")), dr.GetString(dr.GetOrdinal("fld_zip")), dr.GetString(dr.GetOrdinal("fld_agriculturist")),
                                dr.GetString(dr.GetOrdinal("fld_contract_no")), dr.GetString(dr.GetOrdinal("fld_landowner_name")));

                            writer.PageEvent = pgEvent;

                            // Open the document
                            document.Open();

                        } else {

                            pgEvent.FillEvent(cropYear.ToString(), dr.GetString(dr.GetOrdinal("fld_shid")), dr.GetString(dr.GetOrdinal("fld_business_name")),
                                dr.GetString(dr.GetOrdinal("fld_address1")), dr.GetString(dr.GetOrdinal("fld_address2")), dr.GetString(dr.GetOrdinal("fld_city")),
                                dr.GetString(dr.GetOrdinal("fld_state")), dr.GetString(dr.GetOrdinal("fld_zip")), dr.GetString(dr.GetOrdinal("fld_agriculturist")),
                                dr.GetString(dr.GetOrdinal("fld_contract_no")), dr.GetString(dr.GetOrdinal("fld_landowner_name")));
                        }

                        // ======================================================
                        // Generate a new page.
                        // ======================================================
                        if (
                            table != null) {
                            document.NewPage();
                        }

                        // ======================================================
                        // Legal Land Description
                        // ======================================================

                        if (drLandDesc.Read()) {

                            // ***  ROW 1  ***
                            tmpLayout = new float[] { 13F, 13.5F, 11F, 13.5F, 11F, 13.5F, 11F, 13.5F };
                            table = PdfReports.CreateTable(tmpLayout, 0);

                            PdfReports.AddText2Table(table, "Field Name: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_field_name")), normalFont);

                            PdfReports.AddText2Table(table, "Acres: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetInt32(drLandDesc.GetOrdinal("cntg_acres")).ToString(), normalFont);

                            PdfReports.AddText2Table(table, "State: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_lld_state")), normalFont);

                            PdfReports.AddText2Table(table, "County: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_lld_county")), normalFont);

                            // ***  ROW 2  ***
                            PdfReports.AddText2Table(table, "1/4 Quadrant: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_lld_quarter_quadrant")), normalFont);

                            PdfReports.AddText2Table(table, "Quadrant: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_lld_quadrant")), normalFont);

                            PdfReports.AddText2Table(table, "Section: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_lld_section")), normalFont);

                            PdfReports.AddText2Table(table, "Township: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_lld_township")), normalFont);

                            // ***  ROW 3  ***
                            PdfReports.AddText2Table(table, "Range: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_lld_range")), normalFont);

                            PdfReports.AddText2Table(table, "Latitude: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetDecimal(drLandDesc.GetOrdinal("cntg_latitude")).ToString(), normalFont);

                            PdfReports.AddText2Table(table, "Longitude: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetDecimal(drLandDesc.GetOrdinal("cntg_longitude")).ToString(), normalFont);

                            PdfReports.AddText2Table(table, "FSA Official: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_fsa_official")), normalFont);

                            // ***  ROW 4  ***
                            PdfReports.AddText2Table(table, "FSA Number: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_fsa_number")), normalFont, 3);

                            PdfReports.AddText2Table(table, "FSA State: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_fsa_state")), normalFont);

                            PdfReports.AddText2Table(table, "FSA County: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_fsa_county")), normalFont);

                            // ***  ROW 5  ***
                            PdfReports.AddText2Table(table, "Farm No: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_farm_number")), normalFont);

                            PdfReports.AddText2Table(table, "Tract No: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_tract_number")), normalFont);

                            PdfReports.AddText2Table(table, "Field No: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_field_number")), normalFont);

                            PdfReports.AddText2Table(table, "1/4 Field: ", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_quarter_field")), normalFont, 7);

                            // ***  ROW 6  ***
                            PdfReports.AddText2Table(table, "Description", labelFont);
                            PdfReports.AddText2Table(table, drLandDesc.GetString(drLandDesc.GetOrdinal("cntg_description")), normalFont, 7);

                            PdfReports.AddTableNoSplit(document, pgEvent, table);
                        }

                        // ======================================================
                        // Planting Block
                        // ======================================================
                        phrase = new Phrase("\nVariety: ", labelFont);
                        para = new Paragraph();
                        para.Add(phrase);

                        tmp = dr.GetString(dr.GetOrdinal("fld_seed_variety"));
                        if (tmp.Length == 0) {

                            tmpLayout = new float[] { 540F };
                            table = PdfReports.CreateTable(tmpLayout, 0);

                            // No seed found in Field record, so list the possible seed options
                            // based on state information
                            string factoryNumber = dr.GetInt16(dr.GetOrdinal("fld_factory_no")).ToString();
                            if (factoryNumber.Length == 0) {

                                PdfReports.AddText2Table(table, para);

                                // No state in Field record, list all possible seed options
                                para = GetSeedsAsText(agronomy, "6", labelFont, normalFont, true);

                                cell = new iTextSharp.text.pdf.PdfPCell(para);
                                cell.BorderWidth = 1;
                                table.AddCell(cell);

                                phrase = new Phrase("\n", labelFont);
                                PdfReports.AddText2Table(table, phrase);

                                para = GetSeedsAsText(agronomy, "2", labelFont, normalFont, true);

                                cell = new iTextSharp.text.pdf.PdfPCell(para);
                                cell.BorderWidth = 1;

                                table.AddCell(cell);

                            } else {

                                PdfReports.AddText2Table(table, para);
                                para = GetSeedsAsText(agronomy, factoryNumber, labelFont, normalFont, true);

                                cell = new iTextSharp.text.pdf.PdfPCell(para);
                                cell.BorderWidth = 1;

                                table.AddCell(cell);
                            }

                        } else {

                            tmpLayout = new float[] { 540F };
                            table = PdfReports.CreateTable(tmpLayout, 0);

                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                            PdfReports.AddText2Table(table, para);
                        }

                        PdfReports.AddText2Table(table, new Paragraph(" \n ", FontFactory.GetFont("HELVETICA", 4F)), tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Seed Block
                        // ======================================================

                        tmpLayout = new float[] { 140F, 30F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // Seed Primed
                        para = new Paragraph();
                        phrase = new Phrase("Seed: ", labelFont);
                        para.Add(phrase);

                        tmp = dr.GetString(dr.GetOrdinal("fld_seed_primed"));
                        if (tmp.Length > 0) {
                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                        } else {
                            values = new ArrayList();
                            foreach (TItem item in agronomy.SeedList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);
                        PdfReports.AddText2Table(table, " ", normalFont);

                        // Treatment
                        para = new Paragraph();
                        phrase = new Phrase("Treatment: ", labelFont);
                        para.Add(phrase);

                        tmp = dr.GetString(dr.GetOrdinal("fld_seed_treatment_chemical"));
                        if (tmp.Length > 0) {
                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                        } else {
                            values = new ArrayList();
                            foreach (TItem item in agronomy.SeedTreatmentList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, 4F)), tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Planting Stuff
                        // ======================================================
                        tmpLayout = new float[] { 170F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // Row Spacing.
                        para = new Paragraph();
                        phrase = new Phrase("Row Spacing: ", labelFont);
                        para.Add(phrase);

                        tmp = (dr.GetInt16(dr.GetOrdinal("fld_row_spacing"))).ToString();
                        if (tmp.Length > 0 && tmp == "0") { tmp = ""; }

                        if (tmp.Length > 0) {
                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                        } else {

                            values = new ArrayList();
                            foreach (TItem item in agronomy.RowSpacingList.Items) {
                                if (item.Name.Length > 0 && item.Name != "0") { values.Add(item.Name); }
                            }

                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);

                        // Planting Spacing
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_plant_spacing"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("Planting Spacing: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length > 0) {

                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                            PdfReports.AddText2Table(table, para);

                        } else {

                            values = new ArrayList();
                            foreach (TItem item in agronomy.PlantSpacingList.Items) {
                                if (item.Name.Length > 0 && item.Name != "0") { values.Add(item.Name); }
                            }

                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                            PdfReports.AddText2Table(table, para);
                        }

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Planting Date Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // Planting Date
                        tmp = dr.GetString(dr.GetOrdinal("fld_planting_date"));
                        para = new Paragraph();
                        phrase = new Phrase("Planting Date: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "___________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // 80% Emerg Date
                        tmp = dr.GetString(dr.GetOrdinal("fld_emerg_80_date"));
                        para = new Paragraph();
                        phrase = new Phrase("80% Emerg Date: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "___________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Replanting Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 180F, 190F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // Replanting Date
                        tmp = dr.GetString(dr.GetOrdinal("fld_replant_date"));
                        para = new Paragraph();
                        phrase = new Phrase("Replanting Date: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "____________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // Replant Variety
                        tmp = dr.GetString(dr.GetOrdinal("fld_replant_seed_variety"));
                        para = new Paragraph();
                        phrase = new Phrase("Replant Variety: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "____________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // Acres Replanted
                        tmp = (dr.GetInt32(dr.GetOrdinal("fld_acres_replanted"))).ToString();
                        if (tmp == "0") { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("Acres Replanted: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "____________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // Replant Reason
                        tmp = dr.GetString(dr.GetOrdinal("fld_replant_reason"));
                        para = new Paragraph();
                        phrase = new Phrase("Replant Reason: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "____________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // Lost Reason
                        tmp = dr.GetString(dr.GetOrdinal("fld_lost_reason"));
                        para = new Paragraph();
                        phrase = new Phrase("Reason Lost: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "____________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // Lost Acres
                        tmp = (dr.GetInt32(dr.GetOrdinal("fld_acres_lost"))).ToString();
                        if (tmp == "0") { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("Acres Lost: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) {
                            tmp = "____________";
                        }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Soil Sample Block
                        // ======================================================
                        tmpLayout = new float[] { 165F, 120F, 135F, 120F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // 1. Soil Texture
                        tmp = dr.GetString(dr.GetOrdinal("fld_soil_texture"));
                        para = new Paragraph();
                        phrase = new Phrase("Soil Texture: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length > 0) {
                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                        } else {

                            values = new ArrayList();
                            foreach (TItem item in agronomy.SoilTextureList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }

                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);

                        // 2. Soil Sample
                        tmp = dr.GetString(dr.GetOrdinal("fld_test_season"));
                        para = new Paragraph();
                        phrase = new Phrase("Soil Sample: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length > 0) {
                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                        } else {

                            values = new ArrayList();
                            foreach (TItem item in agronomy.SoilTestList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }

                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);

                        // 3. Nitrogen Sample Depth
                        tmp = (dr.GetInt16(dr.GetOrdinal("fld_test_depth"))).ToString();
                        if (tmp == "0") { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("N Sample Depth: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length > 0) {
                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                        } else {

                            values = new ArrayList();
                            foreach (TItem item in agronomy.SampleDepthList.Items) {
                                if (item.Name.Length > 0 && item.Name != "0") { values.Add(item.Name); }
                            }

                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);

                        // 4. grid / zone
                        para = new Paragraph();
                        para.Add(new Phrase(@"Grid\Zone: ", labelFont));
                        tmp = dr.GetString(dr.GetOrdinal("fld_grid_zone"));
                        if (tmp.Length == 0) { tmp = @"Yes \ No"; }
                        para.Add(new Phrase(tmp, normalFont));
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Soil Sample Test Results Block
                        // ======================================================
                        tmpLayout = new float[] { 90F, 72F, 90F, 72F, 72F, 72F, 72F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // Results: Label
                        para = new Paragraph();
                        phrase = new Phrase("Test Results: ", labelFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // Nitrogen
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_test_N"))).ToString("#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("N: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) { tmp = "______"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);

                        para.Add(new Phrase(" lbs", normalFont));
                        PdfReports.AddText2Table(table, para);

                        // Phosphorus
                        para = new Paragraph();
                        phrase = new Phrase("P: ", labelFont);
                        para.Add(phrase);

                        tmp = dr.GetString(dr.GetOrdinal("fld_test_P"));
                        if (tmp.Length == 0) {
                            values = new ArrayList();
                            foreach (TItem item in agronomy.SamplePList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        } else {
                            para.Add(new Phrase(tmp, normalFont));
                        }
                        PdfReports.AddText2Table(table, para);

                        // Potasium
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_test_K"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("K: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) { tmp = "______"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);

                        para.Add(new Phrase(" ppm", normalFont));
                        PdfReports.AddText2Table(table, para);

                        // Salts
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_test_salts"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("Salts: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) { tmp = "______"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);

                        PdfReports.AddText2Table(table, para);

                        // pH
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_test_pH"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("pH: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) { tmp = "______"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);

                        PdfReports.AddText2Table(table, para);

                        // Organic Material
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_test_org_mat"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("O.M.: ", labelFont);
                        para.Add(phrase);

                        if (tmp.Length == 0) { tmp = "______"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);

                        para.Add(new Phrase(" %", normalFont));
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Last Yr Manure Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // Last year
                        tmp = (dr.GetInt32(dr.GetOrdinal("fld_last_yr_manure"))).ToString();
                        if (tmp.Length > 0 && tmp == "0") { tmp = ""; }
                        para = new Paragraph();
                        phrase = new Phrase("Last Year Manure Applied: ", labelFont);
                        //para.Add(phrase);
                        PdfReports.AddText2Table(table, phrase);

                        if (tmp.Length > 0) {
                            phrase = new Phrase(tmp, normalFont);
                            //para.Add(phrase);
                            PdfReports.AddText2Table(table, phrase);
                        } else {
                            values = new ArrayList();
                            for (int i = 0; i < 5; i++) {
                                values.Add((cropYear - i).ToString());
                            }

                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Fertilizer Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 75F, 75F, 75F, 145F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        PdfReports.AddText2Table(table, "", labelFont);
                        PdfReports.AddText2Table(table, "Actual units/Acre      Average Over Whole Field", labelFont, 4);

                        // Fall
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_fal_N"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "Fall " + (cropYear - 1).ToString() + " Applied Fertilizer", labelFont);
                        PdfReports.AddText2Table(table, "N: " + tmp + " lbs", normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_fal_P"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "P: " + tmp + " lbs", normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_fal_K"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "K: " + tmp + " lbs", normalFont);

                        PdfReports.AddText2Table(table, "", normalFont);

                        // Spring
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_spr_N"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "Spring " + cropYear.ToString() + " Applied Fertilizer", labelFont);
                        PdfReports.AddText2Table(table, "N: " + tmp + " lbs", normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_spr_P"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "P: " + tmp + " lbs", normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_spr_K"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "K: " + tmp + " lbs", normalFont);

                        PdfReports.AddText2Table(table, "", normalFont);

                        // In Season
                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_ins_N"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "In Season " + cropYear.ToString() + " Applied Fertilizer", labelFont);
                        PdfReports.AddText2Table(table, "N: " + tmp + " lbs", normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_ins_P"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "P: " + tmp + " lbs", normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_fert_ins_K"))).ToString("#,###.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        PdfReports.AddText2Table(table, "K: " + tmp + " lbs", normalFont);

                        PdfReports.AddText2Table(table, "", normalFont);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Start Fert Block (mostly)
                        // ======================================================
                        tmpLayout = new float[] { 170F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // Starter fert
                        para = new Paragraph();
                        phrase = new Phrase("Starter Fertilizer: ", labelFont);
                        para.Add(phrase);

                        tmp = dr.GetString(dr.GetOrdinal("fld_fert_starter"));
                        if (tmp.Length == 0) { tmp = @"Yes \ No"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);
                        PdfReports.AddText2Table(table, "", normalFont);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Insecticide Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        // pre-emerg. insect.
                        para = new Paragraph();
                        phrase = new Phrase("Pre-Emergence Insecticide: ", labelFont);
                        para.Add(phrase);

                        tmp = dr.GetString(dr.GetOrdinal("fld_pre_insecticide"));
                        if (tmp.Length == 0) { tmp = @"Yes \ No"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        // post.emerg. insect.
                        para = new Paragraph();
                        phrase = new Phrase("Post-Emergence Insecticide: ", labelFont);
                        para.Add(phrase);

                        tmp = dr.GetString(dr.GetOrdinal("fld_post_insectcide"));
                        if (tmp.Length == 0) { tmp = @"Yes \ No"; }
                        phrase = new Phrase(tmp, normalFont);
                        para.Add(phrase);
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Root Maggot Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 123F, 123F, 124F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        para = new Paragraph();
                        para.Add(new Phrase("Insecticide-Root Maggot: ", labelFont));

                        tmp = dr.GetString(dr.GetOrdinal("fld_root_maggot_insecticide"));
                        if (tmp == "") { tmp = @"Yes \ No"; }
                        para.Add(new Phrase(tmp, normalFont));

                        PdfReports.AddText2Table(table, para);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_rootm_counter_lbs"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        tmp = "Counter 15G: " + tmp + " lbs/A";
                        PdfReports.AddText2Table(table, tmp, normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_rootm_temik_lbs"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        tmp = "Temik: " + tmp + " lbs/A";
                        PdfReports.AddText2Table(table, tmp, normalFont);

                        tmp = (dr.GetDecimal(dr.GetOrdinal("fld_rootm_thimet_lbs"))).ToString("#.#");
                        if (tmp.Length > 0 && Decimal.Parse(tmp) == 0) { tmp = ""; }
                        if (tmp.Length == 0) { tmp = "______"; }
                        tmp = "Thimet: " + tmp + " lbs/A";
                        PdfReports.AddText2Table(table, tmp, normalFont);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Weed Control Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        para = new Paragraph();
                        para.Add(new Phrase("Pre-Emergence Weed Control: ", labelFont));

                        string origAnswer = (dr.GetString(dr.GetOrdinal("fld_pre_weed_ctrl"))).ToString();
                        string displayAnswer = origAnswer;
                        if (displayAnswer.Length == 0) { displayAnswer = @"Yes \ No"; }

                        para.Add(new Phrase(displayAnswer, normalFont));
                        PdfReports.AddText2Table(table, para);

                        // Number of Herbicide RX
                        para = new Paragraph();
                        phrase = new Phrase("Number of Herbicide Treatments: ", labelFont);
                        para.Add(phrase);

                        tmp = dr.GetInt32(dr.GetOrdinal("fld_herbicide_rx_count")).ToString();
                        if (tmp.Length > 0 && tmp != "0") {
                            phrase = new Phrase(tmp, normalFont);
                            para.Add(phrase);
                        } else {
                            values = new ArrayList();
                            foreach (TItem item in agronomy.HerbicideRxCountList.Items) {
                                if (item.Name.Length > 0 && item.Name != "0") { values.Add(item.Name); }
                            }
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Layby Herbicide Block
                        // =====================================================
                        tmpLayout = new float[] { 170F, 370F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        PdfReports.AddText2Table(table, "Layby Herbicide: ", labelFont);

                        para = new Paragraph();
                        tmp = dr.GetString(dr.GetOrdinal("fld_layby_herbicide_chemical"));

                        if (tmp.Length > 0) {
                            para.Add(new Phrase(tmp, normalFont));
                        } else {
                            values = new ArrayList();
                            foreach (TItem item in agronomy.LaybyHerbicideList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        }
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Cercospora Program Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 250F, 120F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        PdfReports.AddText2Table(table, "Cercospora Program: ", labelFont);
                        PdfReports.AddText2Table(table, "", normalFont);
                        PdfReports.AddText2Table(table, "", normalFont);

                        // Get values array for any missing chemical entries
                        values = new ArrayList();
                        foreach (TItem item in agronomy.CercosporaChemList.Items) {
                            if (item.Name.Length > 0) { values.Add(item.Name); }
                        }

                        // Application #1
                        cell = new iTextSharp.text.pdf.PdfPCell(new Phrase("Application 1 Chemical: ", labelFont));
                        cell.BorderWidth = 0;
                        cell.HorizontalAlignment = Element.ALIGN_CENTER;
                        table.AddCell(cell);

                        tmp = dr.GetString(dr.GetOrdinal("fld_cercsp_app1_chemical"));
                        para = new Paragraph();
                        if (tmp.Length == 0) {
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        } else {
                            para.Add(new Phrase(tmp, normalFont));
                        }

                        PdfReports.AddText2Table(table, para);

                        tmp = dr.GetString(dr.GetOrdinal("fld_cercospora_app1_date"));
                        if (tmp.Length == 0) { tmp = "____________"; }
                        para = new Paragraph();
                        para.Add(new Phrase("Date: ", labelFont));
                        para.Add(new Phrase(tmp, normalFont));
                        PdfReports.AddText2Table(table, para);

                        // Application #2
                        cell = new iTextSharp.text.pdf.PdfPCell(new Phrase("Application 2 Chemical: ", labelFont));
                        cell.BorderWidth = 0;
                        cell.HorizontalAlignment = Element.ALIGN_CENTER;
                        table.AddCell(cell);

                        tmp = dr.GetString(dr.GetOrdinal("fld_cercsp_app2_chemical"));
                        para = new Paragraph();
                        if (tmp.Length == 0) {
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        } else {
                            para.Add(new Phrase(tmp, normalFont));
                        }

                        PdfReports.AddText2Table(table, para);

                        tmp = dr.GetString(dr.GetOrdinal("fld_cercospora_app2_date"));
                        if (tmp.Length == 0) { tmp = "____________"; }
                        para = new Paragraph();
                        para.Add(new Phrase("Date: ", labelFont));
                        para.Add(new Phrase(tmp, normalFont));
                        PdfReports.AddText2Table(table, para);

                        // Application #3
                        cell = new iTextSharp.text.pdf.PdfPCell(new Phrase("Application 3 Chemical: ", labelFont));
                        cell.BorderWidth = 0;
                        cell.HorizontalAlignment = Element.ALIGN_CENTER;
                        table.AddCell(cell);

                        tmp = dr.GetString(dr.GetOrdinal("fld_cercsp_app3_chemical"));
                        para = new Paragraph();
                        if (tmp.Length == 0) {
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        } else {
                            para.Add(new Phrase(tmp, normalFont));
                        }

                        PdfReports.AddText2Table(table, para);

                        tmp = dr.GetString(dr.GetOrdinal("fld_cercospora_app3_date"));
                        if (tmp.Length == 0) { tmp = "____________"; }
                        para = new Paragraph();
                        para.Add(new Phrase("Date: ", labelFont));
                        para.Add(new Phrase(tmp, normalFont));
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Powdery Mildew Block
                        // ======================================================
                        tmpLayout = new float[] { 170F, 180F, 190F };
                        table = PdfReports.CreateTable(tmpLayout, 0);

                        para = new Paragraph();
                        para.Add(new Phrase("Treated for Powdery Mildew: ", labelFont));
                        tmp = dr.GetString(dr.GetOrdinal("fld_treated_powdery_mildew"));
                        if (tmp.Length == 0) { tmp = @"Yes \ No"; }
                        para.Add(new Phrase(tmp, normalFont));
                        PdfReports.AddText2Table(table, para);

                        // Hail
                        para = new Paragraph();
                        para.Add(new Phrase("Hail Stress: ", labelFont));

                        tmp = dr.GetString(dr.GetOrdinal("fld_hail_stress"));
                        if (tmp.Length == 0) {
                            values = new ArrayList();
                            foreach (TItem item in agronomy.HailStressList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        } else {
                            para.Add(new Phrase(tmp, normalFont));
                        }
                        PdfReports.AddText2Table(table, para);

                        // Weed Control
                        para = new Paragraph();
                        para.Add(new Phrase("Weed Control: ", labelFont));

                        tmp = dr.GetString(dr.GetOrdinal("fld_weed_control"));
                        if (tmp.Length == 0) {
                            values = new ArrayList();
                            foreach (TItem item in agronomy.WeedControlList.Items) {
                                if (item.Name.Length > 0) { values.Add(item.Name); }
                            }
                            PdfReports.AddValues2Paragraph(para, values, normalFont);
                        } else {
                            para.Add(new Phrase(tmp, normalFont));
                        }
                        PdfReports.AddText2Table(table, para);

                        //PdfReports.AddText2Table(table, new Paragraph(" \n ", new Font(Font.HELVETICA, NewLineHeight)), tmpLayout.Length);
                        //PdfReports.AddText2Table(table, " ", normalFont, tmpLayout.Length);
                        //PdfReports.AddTableNoSplit(document, pgEvent, table);

                        // ======================================================
                        // Nematode \ Rhizoctonia Block
                        // ======================================================
                        //tmpLayout = new float[] { 170F, 370F };
                        //table = PdfReports.CreateTable(tmpLayout, 0);

                        // Nematode
                        para = new Paragraph();
                        para.Add(new Phrase("Treated for Nematode: ", labelFont));
                        tmp = dr.GetString(dr.GetOrdinal("fld_treated_nematode"));
                        if (tmp.Length == 0) { tmp = @"Yes \ No"; }
                        para.Add(new Phrase(tmp, normalFont));
                        PdfReports.AddText2Table(table, para);

                        // Rhizoctonia
                        para = new Paragraph();
                        para.Add(new Phrase("Treated for Rhizoctonia: ", labelFont));
                        tmp = dr.GetString(dr.GetOrdinal("fld_treated_rhizoctonia"));
                        if (tmp.Length == 0) { tmp = @"Yes \ No"; }
                        para.Add(new Phrase(tmp, normalFont));
                        PdfReports.AddText2Table(table, para);

                        PdfReports.AddText2Table(table, " ", normalFont);
                        PdfReports.AddTableNoSplit(document, pgEvent, table);

                    }
                    catch (System.Exception ex) {
                        WSCIEMP.Common.CException wscEx = new WSCIEMP.Common.CException(METHOD_NAME, ex);
                        throw (wscEx);
                    }
                }

                // ======================================================
                // Close document
                // ======================================================
                if (document != null) {
                    pgEvent.IsDocumentClosing = true;
                    document.Close();
                    document = null;
                }
                if (writer == null) {
                    // Warn that we have no data.
                    WSCIEMP.Common.CWarning warn = new WSCIEMP.Common.CWarning("No records matched your report criteria.");
                    throw (warn);
                }
            }
            catch (Exception ex) {
                string errMsg = "document is null: " + (document == null).ToString() + "; " +
                    "writer is null: " + (writer == null).ToString();
                WSCIEMP.Common.CException wscex = new WSCIEMP.Common.CException(METHOD_NAME + errMsg, ex);
                throw (wscex);
            }
            finally {
                if (dr != null) {
                    if (!dr.IsClosed) {
                        dr.Close();
                    }
                }
                if (drLandDesc != null) {
                    if (!drLandDesc.IsClosed) {
                        drLandDesc.Close();
                    }
                }
                if (document != null) {
                    pgEvent.IsDocumentClosing = true;
                    document.Close();
                }
                if (writer != null) {
                    writer.Close();
                }
            }
        }
Example #18
0
        public static byte[] GuildStorageData(character c)
        {
            Systems.MsSQL getstorage = new Systems.MsSQL("SELECT * FROM char_items WHERE guild_storage_id='" + c.Network.Guild.Guildid + "' AND storagetype='3'");
            int           itemcount  = getstorage.Count();
            PacketWriter  Writer     = new PacketWriter();

            Writer.Create(Systems.SERVER_GUILD_STORAGE3);
            Writer.Byte(c.Network.Guild.StorageSlots);
            Writer.Byte(itemcount);
            if (itemcount != 0)
            {
                using (System.Data.SqlClient.SqlDataReader reader = getstorage.Read())
                {
                    while (reader.Read())
                    {
                        Item.AddItemPacket(Writer, reader.GetByte(5), reader.GetInt32(2), reader.GetByte(4), reader.GetInt16(6), reader.GetInt32(7), reader.GetInt32(0), reader.GetInt32(9), reader.GetInt32(30));
                    }
                }
            }
            getstorage.Close();
            return(Writer.GetBytes());
        }
        private static List<iSearch_Title_Result> DataReader_To_Simple_Result_List2(SqlDataReader Reader, List<string> Metadata_Field_Names)
        {
            // Create return list
            List<iSearch_Title_Result> returnValue = new List<iSearch_Title_Result>();

            // Create some lists used during the construction
            Dictionary<int, Database_Title_Result> titleLookupByRowNumber = new Dictionary<int, Database_Title_Result>();
            Dictionary<int, Database_Item_Result> itemLookupByItemID = new Dictionary<int, Database_Item_Result>();
            Dictionary<int, int> rowNumberLookupByItemID = new Dictionary<int, int>();

            // May have not values returned
            if (Reader.FieldCount < 5)
                return null;

            // Get all the main title values first
            int minimumRownumber = -1;
            while (Reader.Read())
            {
                // Create new database title object for this
                Database_Title_Result result = new Database_Title_Result
                {
                    RowNumber = Reader.GetInt32(0),
                    BibID = Reader.GetString(1),
                    GroupTitle = Reader.GetString(2),
                    OPAC_Number = Reader.GetInt32(3),
                    OCLC_Number = Reader.GetInt64(4),
                    GroupThumbnail = Reader.GetString(5),
                    MaterialType = Reader.GetString(6),
                    Primary_Identifier_Type = Reader.GetString(7),
                    Primary_Identifier = Reader.GetString(8)
                };

                titleLookupByRowNumber.Add(result.RowNumber, result);

                if (minimumRownumber == -1)
                {
                    minimumRownumber = result.RowNumber;
                }
            }

            // Move to the item system-required information table
            Reader.NextResult();

            // If there were no titles, then there are no results
            if (titleLookupByRowNumber.Count == 0)
                return returnValue;

            // Step through all the item rows, build the item, and add to the title
            Database_Title_Result titleResult = titleLookupByRowNumber[minimumRownumber];
            returnValue.Add(titleResult);
            int lastRownumber = titleResult.RowNumber;
            while (Reader.Read())
            {
                // Ensure this is the right title for this item
                int thisRownumber = Reader.GetInt32(0);
                if (thisRownumber != lastRownumber)
                {
                    titleResult = titleLookupByRowNumber[thisRownumber];
                    lastRownumber = thisRownumber;

                    // Add this title to the list
                    returnValue.Add(titleResult);
                }

                // Create new database item object for this
                Database_Item_Result result = new Database_Item_Result
                {
                    ItemID = Reader.GetInt32(1),
                    VID = Reader.GetString(2),
                    Title = Reader.GetString(3),
                    IP_Restriction_Mask = Reader.GetInt16(4),
                    MainThumbnail = Reader.GetString(5),
                    Level1_Index = (short)Reader.GetInt32(6),
                    Level1_Text = Reader.GetString(7),
                    Level2_Index = (short)Reader.GetInt32(8),
                    Level2_Text = Reader.GetString(9),
                    Level3_Index = (short)Reader.GetInt32(10),
                    Level3_Text = Reader.GetString(11),
                    PubDate = Reader.GetString(12),
                    PageCount = Reader.GetInt32(13),
                    Link = Reader.GetString(14),
                    Spatial_KML = Reader.GetString(15),
                    COinS_OpenURL = Reader.GetString(16)
                };

                // Save to the hash lookup for adding display metadata
                itemLookupByItemID[result.ItemID] = result;
                rowNumberLookupByItemID[result.ItemID] = thisRownumber;

                // Add this to the title object
                titleResult.Add_Item_Result(result);
            }

            // Move to the item aggregation-configured display information table
            Reader.NextResult();

            // Set some values for checking for uniformity of values
            const int ITEMS_TO_CHECK_IN_EACH_TITLE = 20;
            bool first_item_analyzed = true;
            List<bool> checking_fields = new List<bool>();
            int display_fields_count = 0;
            int itemcount = 0;
            int lastRowNumber = -1;
            while (Reader.Read())
            {
                // Get the item id and then work back to the local title id
                int itemId = Reader.GetInt32(0);
                int rowNumber = rowNumberLookupByItemID[itemId];

                // If this is the very first item analyzed, need to do some work first
                if (first_item_analyzed)
                {
                    // Save the number of display fields
                    display_fields_count = Reader.FieldCount - 1;

                    // Add a boolean for each display field
                    for (int i = 0; i < display_fields_count; i++)
                    {
                        // Add the default boolean value here
                        checking_fields.Add(true);

                        // Save the metadata label
                        Metadata_Field_Names.Add(Reader.GetName(i + 1));
                    }

                    // Done with the first row analysis, so ensure it does not repeat
                    first_item_analyzed = false;
                }

                // Is this is the start of a new title row?
                if (lastRowNumber != rowNumber)
                {
                    // Get this title object
                    titleResult = titleLookupByRowNumber[rowNumber];

                    // Set items analyzed for this title to zero
                    itemcount = 0;

                    // Back to checking each metadata field since this is a new title
                    for (int i = 0; i < display_fields_count; i++)
                        checking_fields[i] = true;

                    // Save this row numbe as the last row number analyzed
                    lastRowNumber = rowNumber;
                }

                if (itemcount == 0)
                {
                    // Set all the initial display values (at the title level) from
                    // this item's display information
                    titleResult.Metadata_Display_Values = new string[display_fields_count];
                    for (int i = 0; i < display_fields_count; i++)
                    {
                        titleResult.Metadata_Display_Values[i] = Reader.GetString(i + 1);
                    }
                }
                else if (itemcount < ITEMS_TO_CHECK_IN_EACH_TITLE)
                {
                    // Compare the values attached with each display piece of metadata
                    // from the title with this additional, individual item.  If the
                    // values are the same, it should display at the title level, but
                    // if they are different, we will not display the values at that level
                    for (int i = 0; i < display_fields_count; i++)
                    {
                        // If we already found a mismatch for this metadata field, then
                        // no need to continue checking
                        if (checking_fields[i])
                        {
                            if (String.Compare(titleResult.Metadata_Display_Values[i], Reader.GetString(i + 1), StringComparison.InvariantCultureIgnoreCase) != 0)
                            {
                                titleResult.Metadata_Display_Values[i] = "*";
                                checking_fields[i] = false;
                            }
                        }
                    }
                }
            }

            return returnValue;
        }
Example #20
0
        private static void ReportBuilder(SqlDataReader drPay, int cropYear, int paymentNumber, string paymentDescription,
            string fromDate, string toDate, string statementDate, bool isCumulative, string logoUrl, System.IO.FileStream fs)
        {
            const string METHOD_NAME = "rptTransmittal.ReportBuilder: ";
            const int resetFlag = 0;

            Document document = null;
            PdfWriter writer = null;
            PdfPTable table = null;
            TransmittalReportEvent pgEvent = null;
            iTextSharp.text.Image imgLogo = null;

            int contractNumber = 0;
            int lastContractNumber = 0;
            int payeeNumber = 0;
            int lastPayeeNumber = 0;

            decimal ytdEHBonus = 0;
            decimal ytdEHAmount = 0;
            decimal ytdRHAmount = 0;
            decimal ytdDeductions = 0;
            decimal ytdEHAmountMoved = 0;
            decimal ytdRHAmountMoved = 0;
            decimal ytdNet = 0;
            decimal curSLM = 0;
            decimal pctPaid = 0;
            decimal actualSugar = 0;

            string rptTitle = "Western Sugar Cooperative Payment Transmittal";

            Font headerFont = FontFactory.GetFont("HELVETICA", 8F, Font.NORMAL);
            Font normalFont = FontFactory.GetFont("HELVETICA", 8F, Font.NORMAL);
            Font labelFont = FontFactory.GetFont("HELVETICA", 8F, Font.BOLD);

            try {

                using (SqlConnection conn = new SqlConnection(ConfigurationManager.ConnectionStrings["BeetConn"].ToString())) {

                    while (drPay.Read()) {

                        try {

                            contractNumber = Convert.ToInt32(drPay.GetString(drPay.GetOrdinal("Contract_Number")));
                            payeeNumber = drPay.GetInt16(drPay.GetOrdinal("Payee_Number"));

                            if (document == null) {

                                lastContractNumber = contractNumber;
                                lastPayeeNumber = payeeNumber;

                                // IF YOU CHANGE MARGINS, CHANGE YOUR TABLE LAYOUTS !!!
                                //  ***  US LETTER: 612 X 792  ***
                                //document = new Document(iTextSharp.text.PageSize.LETTER, 36, 36, 54, 72);
                                document = new Document(PortraitPageSize.PgPageSize, PortraitPageSize.PgLeftMargin,
                                    PortraitPageSize.PgRightMargin, PortraitPageSize.PgTopMargin, PortraitPageSize.PgBottomMargin);

                                // we create a writer that listens to the document
                                // and directs a PDF-stream to a file
                                writer = PdfWriter.GetInstance(document, fs);

                                imgLogo = PdfReports.GetImage(logoUrl, 127, 50, iTextSharp.text.Element.ALIGN_CENTER);

                                // Attach my override event handler(s)
                                pgEvent = new TransmittalReportEvent();
                                pgEvent.FillEvent(drPay, cropYear, statementDate, resetFlag, rptTitle, paymentDescription, imgLogo);
                                writer.PageEvent = pgEvent;

                                // Open the document
                                document.Open();

                            } else {

                                if (contractNumber != lastContractNumber || payeeNumber != lastPayeeNumber) {

                                    ytdEHBonus = 0;
                                    ytdEHAmount = 0;
                                    ytdRHAmount = 0;
                                    ytdDeductions = 0;
                                    ytdNet = 0;
                                    ytdEHAmountMoved = 0;
                                    ytdRHAmountMoved = 0;

                                    lastContractNumber = contractNumber;
                                    if (payeeNumber != lastPayeeNumber) {
                                        lastPayeeNumber = payeeNumber;
                                    }
                                    pgEvent.FillEvent(drPay, cropYear, statementDate, resetFlag, rptTitle, paymentDescription, imgLogo);
                                    document.NewPage();
                                }
                            }

                            // =======================================================
                            // Add Payment Detail
                            // =======================================================
                            table = PdfReports.CreateTable(_primaryTableLayout, 1);
                            PdfReports.AddText2Table(table, drPay.GetString(drPay.GetOrdinal("Payment_Description")) + " Payment", labelFont, 8);

                            // Header
                            PdfReports.AddText2Table(table, " ", labelFont);
                            PdfReports.AddText2Table(table, "SLM", labelFont, "center");
                            PdfReports.AddText2Table(table, "% Sugar", labelFont);
                            PdfReports.AddText2Table(table, "% Paid", labelFont);
                            PdfReports.AddText2Table(table, "Price/Ton", labelFont);
                            PdfReports.AddText2Table(table, "Tons", labelFont);
                            PdfReports.AddText2Table(table, "YTD Amount", labelFont);
                            PdfReports.AddText2Table(table, "Current Amount", labelFont);

                            // EH Premium
                            PdfReports.AddText2Table(table, "Early Harvest Premium", labelFont, "left");
                            PdfReports.AddText2Table(table, " ", labelFont);
                            PdfReports.AddText2Table(table, " ", labelFont);
                            PdfReports.AddText2Table(table, " ", labelFont);
                            PdfReports.AddText2Table(table, " ", labelFont);
                            PdfReports.AddText2Table(table, " ", labelFont);

                            if (isCumulative) {
                                ytdEHBonus += drPay.GetDecimal(drPay.GetOrdinal("EH_Bonus"));
                            } else {
                                ytdEHBonus = drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhBonus"));
                            }

                            PdfReports.AddText2Table(table, ytdEHBonus.ToString("$#,##0.00"), normalFont);
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("EH_Bonus")).ToString("$#,##0.00"), normalFont);

                            // Early Harvest
                            actualSugar = drPay.GetDecimal(drPay.GetOrdinal("EH_Sugar"));
                            curSLM = drPay.GetDecimal(drPay.GetOrdinal("EH_SLM"));
                            pctPaid = drPay.GetDecimal(drPay.GetOrdinal("Pct_EH_Paid"));

                            PdfReports.AddText2Table(table, "Early Harvest   ", labelFont, "left");

                            if (drPay.GetDecimal(drPay.GetOrdinal("EH_SLM")) != 0) {
                                PdfReports.AddText2Table(table, curSLM.ToString("N4"), normalFont, "center");
                            } else {
                                PdfReports.AddText2Table(table, "------", normalFont, "center");
                            }

                            if (drPay.GetDecimal(drPay.GetOrdinal("EH_Sugar")) != 0) {
                                PdfReports.AddText2Table(table, actualSugar.ToString("N2"), normalFont);
                            } else {
                                PdfReports.AddText2Table(table, "------", normalFont);
                            }

                            if (drPay.GetDecimal(drPay.GetOrdinal("Pct_EH_Paid")) != 0) {
                                PdfReports.AddText2Table(table, pctPaid.ToString("N3"), normalFont);
                            } else {
                                PdfReports.AddText2Table(table, "------", normalFont);
                            }

                            if (drPay.GetDecimal(drPay.GetOrdinal("EH_Price")) != 0) {
                                PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("EH_Price")).ToString("$#,##0.000"), normalFont);
                            } else {
                                PdfReports.AddText2Table(table, "------", normalFont);
                            }

                            if (drPay.GetDecimal(drPay.GetOrdinal("EH_Tons")) != 0 || drPay.GetDecimal(drPay.GetOrdinal("EH_tons_moved")) != 0) {
                                PdfReports.AddText2Table(table, (drPay.GetDecimal(drPay.GetOrdinal("EH_Tons")) - drPay.GetDecimal(drPay.GetOrdinal("EH_tons_moved"))).ToString("N4"), normalFont);
                            } else {
                                PdfReports.AddText2Table(table, "------", normalFont);
                            }

                            if (isCumulative) {
                                ytdEHAmount += drPay.GetDecimal(drPay.GetOrdinal("EH_Gross_Pay")) - drPay.GetDecimal(drPay.GetOrdinal("EH_amt_moved"));
                            } else {
                                ytdEHAmount = drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhGrossPay")) - drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhAmtMoved"));
                            }
                            PdfReports.AddText2Table(table, ytdEHAmount.ToString("$#,##0.00"), normalFont);
                            PdfReports.AddText2Table(table, (drPay.GetDecimal(drPay.GetOrdinal("EH_Gross_Pay")) - drPay.GetDecimal(drPay.GetOrdinal("EH_amt_moved"))).ToString("$#,##0.00"), normalFont);

                            // Regular Harvest
                            actualSugar = drPay.GetDecimal(drPay.GetOrdinal("RH_Sugar"));
                            curSLM = drPay.GetDecimal(drPay.GetOrdinal("RH_SLM"));
                            pctPaid = drPay.GetDecimal(drPay.GetOrdinal("Pct_RH_Paid"));

                            PdfReports.AddText2Table(table, "Regular Harvest ", labelFont, "left");
                            PdfReports.AddText2Table(table, curSLM.ToString("N4"), normalFont, "center");
                            PdfReports.AddText2Table(table, actualSugar.ToString("N2"), normalFont);
                            PdfReports.AddText2Table(table, pctPaid.ToString("N3"), normalFont);
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("RH_Price")).ToString("$#,##0.000"), normalFont);
                            PdfReports.AddText2Table(table, (drPay.GetDecimal(drPay.GetOrdinal("RH_Tons"))
                                - drPay.GetDecimal(drPay.GetOrdinal("RH_Tons_moved"))).ToString("N4"), normalFont);
                            if (isCumulative) {
                                ytdRHAmount += drPay.GetDecimal(drPay.GetOrdinal("RH_Gross_Pay")) - drPay.GetDecimal(drPay.GetOrdinal("RH_amt_moved"));
                            } else {
                                ytdRHAmount = drPay.GetDecimal(drPay.GetOrdinal("ncYtdRhGrossPay")) - drPay.GetDecimal(drPay.GetOrdinal("ncYtdRhAmtMoved"));
                            }
                            // YTD Amount
                            PdfReports.AddText2Table(table, ytdRHAmount.ToString("$#,##0.00"), normalFont);
                            // Current Amount
                            PdfReports.AddText2Table(table, (drPay.GetDecimal(drPay.GetOrdinal("RH_Gross_Pay")) - drPay.GetDecimal(drPay.GetOrdinal("RH_amt_moved"))).ToString("$#,##0.00"), normalFont);

                            // Reduced Early Harvest
                            PdfReports.AddText2Table(table, "Reduced Early Harvest Excess Beets  ", labelFont, "left", 4);
                            PdfReports.AddText2Table(table, " ", normalFont);
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("EH_tons_moved")).ToString("#,#.0000;(#,#.0000)"), normalFont);

                            if (isCumulative) {
                                ytdEHAmountMoved += drPay.GetDecimal(drPay.GetOrdinal("EH_amt_moved"));
                            } else {
                                ytdEHAmountMoved = drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhAmtMoved"));
                            }
                            PdfReports.AddText2Table(table, ytdEHAmountMoved.ToString("$#,#.00;$(#,#.00)"), normalFont);
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("EH_amt_moved")).ToString("$#,#.00;$(#,#.00)"), normalFont);

                            // Reduced Regular Harvest
                            PdfReports.AddText2Table(table, "Reduced Regular Harvest Excess Beets", labelFont, "left", 4);
                            PdfReports.AddText2Table(table, " ", normalFont);
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("RH_tons_moved")).ToString("#,#.0000;(#,#.0000)"), normalFont);
                            if (isCumulative) {
                                ytdRHAmountMoved += drPay.GetDecimal(drPay.GetOrdinal("RH_amt_moved"));
                            } else {
                                ytdRHAmountMoved = drPay.GetDecimal(drPay.GetOrdinal("ncYtdRhAmtMoved"));
                            }
                            PdfReports.AddText2Table(table, ytdRHAmountMoved.ToString("$#,#.00;$(#,#.00)"), normalFont);
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("RH_amt_moved")).ToString("$#,#.00;$(#,#.00)"), normalFont);

                            PdfReports.AddText2Table(table, " ", normalFont, 8);

                            // Total lines
                            //		YTD Amount
                            PdfReports.AddText2Table(table, " ", normalFont, 4);
                            PdfReports.AddText2Table(table, "Total Gross Amount: ", labelFont, "right", 2);
                            PdfReports.AddText2Table(table, ((ytdEHBonus + ytdEHAmount + ytdRHAmount)
                                + ytdEHAmountMoved
                                + ytdRHAmountMoved
                                //+ drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhAmtMoved"))
                                //+ drPay.GetDecimal(drPay.GetOrdinal("ncYtdRhAmtMoved"))
                                ).ToString("#,##0.00"), normalFont);

                            //		Current Amount
                            PdfReports.AddText2Table(table, (drPay.GetDecimal(drPay.GetOrdinal("EH_Bonus")) +
                                drPay.GetDecimal(drPay.GetOrdinal("EH_Gross_Pay")) +
                                drPay.GetDecimal(drPay.GetOrdinal("RH_Gross_Pay")) //+
                                //drPay.GetDecimal(drPay.GetOrdinal("EH_amt_moved")) +
                                //drPay.GetDecimal(drPay.GetOrdinal("RH_amt_moved"))
                                ).ToString("#,##0.00"), normalFont);

                            PdfReports.AddText2Table(table, " ", normalFont, 5);
                            PdfReports.AddText2Table(table, "Deduction Total: ", labelFont, "right");

                            if (isCumulative) {
                                ytdDeductions += drPay.GetDecimal(drPay.GetOrdinal("Deduct_Total"));
                            } else {
                                ytdDeductions = drPay.GetDecimal(drPay.GetOrdinal("ncYtdDeductTotal"));
                            }
                            PdfReports.AddText2Table(table, ytdDeductions.ToString("#,##0.00"), normalFont);
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("Deduct_Total")).ToString("#,##0.00"), normalFont);

                            PdfReports.AddText2Table(table, " ", normalFont, 5);
                            PdfReports.AddText2Table(table, "Net Payment: ", labelFont, "right");

                            decimal currentNet = drPay.GetDecimal(drPay.GetOrdinal("EH_Bonus"))
                                + drPay.GetDecimal(drPay.GetOrdinal("EH_Gross_Pay"))
                                + drPay.GetDecimal(drPay.GetOrdinal("RH_Gross_Pay"))
                                //drPay.GetDecimal(drPay.GetOrdinal("EH_amt_moved"))
                                //drPay.GetDecimal(drPay.GetOrdinal("RH_amt_moved"))
                                - drPay.GetDecimal(drPay.GetOrdinal("Deduct_Total"));

                            if (isCumulative) {
                                ytdNet += currentNet;
                            } else {
                                ytdNet = drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhBonus"))
                                + drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhGrossPay"))
                                + drPay.GetDecimal(drPay.GetOrdinal("ncYtdRhGrossPay"))
                                //drPay.GetDecimal(drPay.GetOrdinal("ncYtdEhAmtMoved"))
                                //drPay.GetDecimal(drPay.GetOrdinal("ncYtdRhAmtMoved"))
                                - drPay.GetDecimal(drPay.GetOrdinal("ncYtdDeductTotal"));
                            }

                            PdfReports.AddText2Table(table, ytdNet.ToString("#,##0.00"), normalFont);
                            PdfReports.AddText2Table(table, currentNet.ToString("#,##0.00"), normalFont);

                            PdfReports.AddText2Table(table, " ", normalFont, 8);
                            PdfReports.AddText2Table(table, " ", normalFont, 6);
                            PdfReports.AddText2Table(table, "Grower Net: ", labelFont, "right");
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("Payment_Amount")).ToString("#,##0.00"), normalFont);

                            PdfReports.AddText2Table(table, " ", normalFont, 6);
                            PdfReports.AddText2Table(table, "Landowner Net: ", labelFont, "right");
                            PdfReports.AddText2Table(table, drPay.GetDecimal(drPay.GetOrdinal("Split_Payment")).ToString("#,##0.00"), normalFont);

                            PdfReports.AddText2Table(table, " ", normalFont, 8);

                            PdfReports.AddTableNoSplit(document, pgEvent, table);

                            if (paymentNumber == drPay.GetInt16(drPay.GetOrdinal("Payment_Number"))) {

                                //================================================================
                                // Add Deduction information
                                //================================================================
                                table = PdfReports.CreateTable(_primaryTableLayout, 1);

                                using (SqlDataReader drDed = WSCPayment.GetTransmittalDeduction(conn,
                                          cropYear, contractNumber,
                                          drPay.GetInt16(drPay.GetOrdinal("Payment_Number")), isCumulative)) {

                                    PdfReports.AddText2Table(table, "Deduction", labelFont, 5);
                                    PdfReports.AddText2Table(table, "Payment", labelFont);
                                    PdfReports.AddText2Table(table, "Amount", labelFont);
                                    PdfReports.AddText2Table(table, " ", labelFont);

                                    while (drDed.Read()) {

                                        PdfReports.AddText2Table(table, drDed.GetString(drDed.GetOrdinal("Deduction_Desc")), normalFont, 5);
                                        PdfReports.AddText2Table(table, drDed.GetString(drDed.GetOrdinal("Payment_Description")), normalFont);
                                        PdfReports.AddText2Table(table, drDed.GetDecimal(drDed.GetOrdinal("Amount")).ToString("$#,##0.00"), normalFont);
                                        PdfReports.AddText2Table(table, " ", labelFont);
                                    }
                                    PdfReports.AddText2Table(table, " ", normalFont, 8);

                                    PdfReports.AddTableNoSplit(document, pgEvent, table);
                                }

                                //================================================================
                                // Add Delivery information
                                //================================================================
                                float[] deliveryLayout = new float[] { 110.8F, 110.8F, 55.4F, 110.8F, 55.4F, 55.4F, 55.4F };
                                table = PdfReports.CreateTable(deliveryLayout, 1);

                                List<TransmittalDeliveryItem> deliveryList = WSCPayment.GetTransmittalDelivery(cropYear, contractNumber, paymentNumber, fromDate, toDate);

                                PdfReports.AddText2Table(table, "Delivery Date", labelFont);
                                PdfReports.AddText2Table(table, "First Net Pounds", labelFont);
                                PdfReports.AddText2Table(table, "Tare %", labelFont);
                                PdfReports.AddText2Table(table, "Final Net Lbs", labelFont);
                                PdfReports.AddText2Table(table, "Sugar %", labelFont);
                                PdfReports.AddText2Table(table, "SLM", labelFont);
                                PdfReports.AddText2Table(table, "Loads", labelFont);

                                foreach (TransmittalDeliveryItem deliveryDay in deliveryList) {

                                    PdfReports.AddText2Table(table, deliveryDay.Delivery_Date.ToShortDateString(), normalFont);
                                    PdfReports.AddText2Table(table, deliveryDay.First_Net_Pounds.ToString("###,###"), normalFont);
                                    PdfReports.AddText2Table(table, deliveryDay.Tare.ToString("N2"), normalFont);
                                    PdfReports.AddText2Table(table, deliveryDay.Final_Net_Pounds.ToString("###,###"), normalFont);
                                    PdfReports.AddText2Table(table, deliveryDay.Sugar_Content.ToString("N2"), normalFont);
                                    PdfReports.AddText2Table(table, deliveryDay.SLM_Pct.ToString("N4"), normalFont);
                                    PdfReports.AddText2Table(table, deliveryDay.Loads.ToString(), normalFont);
                                }
                                PdfReports.AddText2Table(table, " ", normalFont, 6);
                                PdfReports.AddTableNoSplit(document, pgEvent, table);
                            }
                        }
                        catch (System.Exception ex) {
                            WSCIEMP.Common.CException wscEx = new WSCIEMP.Common.CException(METHOD_NAME, ex);
                            throw (wscEx);
                        }
                    }
                }

                // ======================================================
                // Close document
                // ======================================================
                if (document != null) {

                    document.Close();
                    document = null;
                }
                if (writer == null) {
                    // Warn that we have no data.
                    WSCIEMP.Common.CWarning warn = new WSCIEMP.Common.CWarning("No records matched your report criteria.");
                    throw (warn);
                }
            }
            catch (Exception ex) {
                string errMsg = "document is null: " + (document == null).ToString() + "; " +
                    "writer is null: " + (writer == null).ToString();
                WSCIEMP.Common.CException wscex = new WSCIEMP.Common.CException(METHOD_NAME + errMsg, ex);
                throw (wscex);
            }
            finally {

                if (document != null) {
                    document.Close();
                }
                if (drPay != null) {
                    if (!drPay.IsClosed) {
                        drPay.Close();
                    }
                }
                if (writer != null) {
                    writer.Close();
                }
            }
        }
Example #21
0
 public static ReplyInfo CopyReplyToBO(SqlDataReader rdr)
 {
     ReplyInfo reply = new ReplyInfo
                           {
                               Id = rdr.GetInt32(0),
                               CatId = rdr.GetInt32(1),
                               ForumId = rdr.GetInt32(2),
                               TopicId = rdr.GetInt32(3),
                               AuthorId = rdr.GetInt32(4),
                               Date = rdr.GetString(5).ToDateTime().Value,
                               PosterIp = rdr.SafeGetString(6),
                               Status = rdr.GetInt16(7),
                               LastEditDate = rdr.SafeGetString(8).ToDateTime(),
                               LastEditedById = rdr.SafeGetInt32(9),
                               UseSignatures = rdr.GetInt16(10) == 1,
                               Message = rdr.SafeGetString(11)
                           };
     if (rdr.FieldCount > 12)
     {
         reply.AuthorName = rdr.SafeGetString(12);
         reply.EditorName = rdr.SafeGetString(13);
         reply.AuthorViewSig = rdr.GetInt16(14) == 1;
         reply.AuthorSignature = rdr.SafeGetString(15);
     }
     return reply;
 }
Example #22
0
 public static SearchResult CopySearchResultToBO(SqlDataReader rdr, ref int rowcount)
 {
     SearchResult result = new SearchResult()
                               {
                                   CategoryStatus = rdr.GetInt16(1),
                                   CategorySubscriptionLevel = rdr.GetInt32(2),
                                   CategoryTitle = rdr.SafeGetString(3),
                                   ForumSubject = rdr.SafeGetString(4),
                                   ForumSubscriptionLevel = rdr.GetInt32(5),
                                   ForumStatus = rdr.GetInt16(6),
                                   ForumAccessType = rdr.GetInt32(7),
                                   ForumPassword = rdr.SafeGetString(8),
                                   CatId = rdr.GetInt32(9),
                                   ForumId = rdr.GetInt32(10),
                                   Id = rdr.GetInt32(11),
                                   AuthorId = rdr.GetInt32(12),
                                   Subject = rdr.SafeGetString(13),
                                   Status = rdr.GetInt16(14),
                                   LastPostDate = rdr.GetSnitzDate(15),
                                   LastPostAuthorId = rdr.SafeGetInt32(16),
                                   LastReplyId = rdr.SafeGetInt32(17),
                                   ReplyCount = rdr.GetInt32(18),
                                   UnModeratedReplies = rdr.GetInt32(19),
                                   Views = rdr.GetInt32(20),
                                   AuthorName = rdr.SafeGetString(22),
                                   LastPostAuthorName = rdr.SafeGetString(23)
                               };
     rowcount = rdr.GetInt32(24);
     return result;
 }
Example #23
0
        // Jika tidak menggunakan constructor
        // hapus pada baris yg di comment
        // ====================================
        // | Alt + Insert untuk meng-generate |
        // | construktor dari class yg dibuat |
        // ====================================
        public string PengecekField(SqlDataReader hasilPembaca, byte kolom)
        {
            string hasil = "";
            if (hasilPembaca.IsDBNull(kolom))
            {
                if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Byte")
                    hasil = "0";
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Boolean")
                    hasil = "false";
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Int32")
                    hasil = "0";
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Int16")
                    hasil = "0";
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.String")
                    hasil = "";
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Decimal")
                    hasil = "0";
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Int64")
                    hasil = "0";
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.DateTime")
                    hasil = "0";
                else
                {
                    MessageBox.Show(Resources.CAlat_PengecekField_Tipe_data_tidak_di_kenali, Resources.CAlat_PengecekField_Infomasi, MessageBoxButtons.OK,
                        MessageBoxIcon.Information);
                }
            }
            else
            {
                if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Byte")
                    hasil = hasilPembaca.GetByte(kolom).ToString().Trim();
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Boolean")
                    hasil = hasilPembaca.GetBoolean(kolom).ToString().Trim();
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Int32")
                    hasil = hasilPembaca.GetInt32(kolom).ToString().Trim();
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Int16")
                    hasil = hasilPembaca.GetInt16(kolom).ToString().Trim();
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.String")
                    hasil = hasilPembaca.GetString(kolom).ToString().Trim();
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Decimal")
                    hasil = hasilPembaca.GetDecimal(kolom).ToString().Trim();
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.Int64")
                    hasil = hasilPembaca.GetInt64(kolom).ToString().Trim();
                else if (hasilPembaca.GetFieldType(kolom).ToString().Trim() == "System.DateTime")
                    hasil = string.Format("{0:MM/dd/yyyy}", hasilPembaca.GetDateTime(kolom));
                else
                {
                    MessageBox.Show(Resources.CAlat_PengecekField_Tipe_data_tidak_di_kenali, Resources.CAlat_PengecekField_Infomasi, MessageBoxButtons.OK,
                        MessageBoxIcon.Information);
                }
            }

            return hasil;
        }
        /// <summary>
        /// Creates a new instance of the Productos_Objetivo_Detalle class and populates it with data from the specified SqlDataReader.
        /// </summary>
        private static Productos_Objetivo_DetalleInfo MakeProductos_Objetivo_Detalle(SqlDataReader dataReader)
        {
            Productos_Objetivo_DetalleInfo productos_Objetivo_Detalle = new Productos_Objetivo_DetalleInfo();

            if (dataReader.IsDBNull(Cod_objetivo) == false)
                productos_Objetivo_Detalle.cod_objetivo = dataReader.GetInt32(Cod_objetivo);
            if (dataReader.IsDBNull(Cod_producto) == false)
                productos_Objetivo_Detalle.cod_producto = dataReader.GetInt32(Cod_producto);
            if (dataReader.IsDBNull(Muestras) == false)
                productos_Objetivo_Detalle.muestras = dataReader.GetInt16(Muestras);
            if (dataReader.IsDBNull(Orden) == false)
                productos_Objetivo_Detalle.orden = dataReader.GetInt16(Orden);
            if (dataReader.IsDBNull(SyncID) == false)
                productos_Objetivo_Detalle.SyncID = dataReader.GetGuid(SyncID);
            if (dataReader.IsDBNull(SyncTimeStamp) == false)
                productos_Objetivo_Detalle.SyncTimeStamp = DateTime.MinValue;

            return productos_Objetivo_Detalle;
        }
Example #25
0
 public static short getFieldValue(SqlDataReader dr, int ind, short def)
 {
     short val = def;
     if (!dr.IsDBNull(ind))
     {
         System.TypeCode tp = System.Type.GetTypeCode(dr.GetFieldType(ind));
         System.TypeCode typeCode = tp;
         switch (typeCode)
         {
             case System.TypeCode.Boolean:
                 val = (dr.GetBoolean(ind) ? System.Convert.ToInt16(1) : System.Convert.ToInt16(0));
                 break;
             case System.TypeCode.Char:
             case System.TypeCode.SByte:
             case System.TypeCode.UInt16:
                 break;
             case System.TypeCode.Byte:
                 val = System.Convert.ToInt16(dr.GetByte(ind));
                 break;
             case System.TypeCode.Int16:
                 val = dr.GetInt16(ind);
                 break;
             case System.TypeCode.Int32:
                 val = System.Convert.ToInt16(dr.GetInt32(ind));
                 break;
             default:
                 if (typeCode == System.TypeCode.Decimal)
                 {
                     val = System.Convert.ToInt16(dr.GetDecimal(ind));
                 }
                 break;
         }
     }
     return val;
 }
Example #26
0
 public static double getFieldValue(SqlDataReader dr, int ind, double def)
 {
     double val = def;
     if (!dr.IsDBNull(ind))
     {
         switch (System.Type.GetTypeCode(dr.GetFieldType(ind)))
         {
             case System.TypeCode.Boolean:
                 val = (dr.GetBoolean(ind) ? 1.0 : 0.0);
                 break;
             case System.TypeCode.Int16:
                 val = System.Convert.ToDouble(dr.GetInt16(ind));
                 break;
             case System.TypeCode.Int32:
                 val = System.Convert.ToDouble(dr.GetInt32(ind));
                 break;
             case System.TypeCode.Int64:
                 val = System.Convert.ToDouble(dr.GetInt64(ind));
                 break;
             case System.TypeCode.Single:
                 val = System.Convert.ToDouble(dr.GetFloat(ind));
                 break;
             case System.TypeCode.Double:
                 val = dr.GetDouble(ind);
                 break;
             case System.TypeCode.Decimal:
                 val = System.Convert.ToDouble(dr.GetDecimal(ind));
                 break;
         }
     }
     return val;
 }
Example #27
0
 public static string getFieldValue(SqlDataReader dr, int ind, string def)
 {
     string val = def;
     if (!dr.IsDBNull(ind))
     {
         switch (System.Type.GetTypeCode(dr.GetFieldType(ind)))
         {
             case System.TypeCode.Boolean:
                 val = (dr.GetBoolean(ind) ? "1" : "0");
                 break;
             case System.TypeCode.Int16:
                 val = dr.GetInt16(ind).ToString();
                 break;
             case System.TypeCode.Int32:
                 val = dr.GetInt32(ind).ToString();
                 break;
             case System.TypeCode.Int64:
                 val = dr.GetInt64(ind).ToString();
                 break;
             case System.TypeCode.Single:
                 val = dr.GetFloat(ind).ToString();
                 break;
             case System.TypeCode.Double:
                 val = dr.GetDouble(ind).ToString();
                 break;
             case System.TypeCode.Decimal:
                 val = dr.GetDecimal(ind).ToString();
                 break;
             case System.TypeCode.DateTime:
                 val = DBManagerSQL.DBDateToFormatedDate(dr.GetDateTime(ind));
                 break;
             case System.TypeCode.String:
                 val = dr.GetString(ind);
                 break;
         }
     }
     return val;
 }
Example #28
0
        public static byte[] OpenWarehouse2(byte storageslots, player c)
        {
            PacketWriter Writer = new PacketWriter();

            Writer.Create(Systems.SERVER_OPEN_WAREPROB);
            Writer.Byte(storageslots);

            Systems.MsSQL ms = new Systems.MsSQL("SELECT * FROM char_items WHERE storageacc='" + c.ID + "' AND storagetype='1'");

            Writer.Byte(ms.Count());
            using (System.Data.SqlClient.SqlDataReader reader = ms.Read())
            {
                while (reader.Read())
                {
                    Item.AddItemPacket(Writer, reader.GetByte(5), reader.GetInt32(2), reader.GetByte(4), reader.GetInt16(6), reader.GetInt32(7), reader.GetInt32(0), reader.GetInt32(9), reader.GetInt32(30));
                }
            }
            ms.Close();
            return(Writer.GetBytes());
        }
Example #29
0
        private IEnumerable<Tuple<int, SPParameter>> getParameters(SqlDataReader reader)
        {
            var index = reader.GetColumnLookup();
            foreach (var r in reader)
            {
                var procId = reader.GetInt32(index["ProcedureId"]);

                var typeName = reader.GetString(index["t.name"]);
                var maxLength = reader.GetInt16(index["t.maxLen"]);
                var precision = reader.GetByte(index["t.precision"]);
                var scale = reader.GetByte(index["t.scale"]);
                var typeInfo = new DbTypeInfo(typeName, null, maxLength, precision, scale);

                var name = reader.GetString(index["Name"]);
                var position = reader.GetInt32(index["position"]);
                var isOutput = reader.GetBoolean(index["output"]);
                var isReadOnly = reader.GetBoolean(index["readonly"]);
                var defaultValue = reader.GetValue(index["defaultValue"]);
                var param = new SPParameter(name, typeInfo, position, isOutput, isReadOnly, defaultValue);

                yield return Tuple.Create(procId, param);
            }
        }
Example #30
0
 public static int GetSmallInt(string pColName,SqlDataReader pReader)
 {
     return pReader.GetInt16(pReader.GetOrdinal(pColName));
 }
Example #31
0
        protected static void PopulateEntity(SqlDataReader reader, ServerEntity entity, Dictionary<string, PropertyInfo> propMap)
        {
            for (int i = 0; i < reader.FieldCount; i++)
            {
                String columnName = reader.GetName(i);

                // Special case for when we select a range of values with an EntityBroker, just ignore
                if (columnName.Equals("RowNum"))
                    continue;

                if (columnName.Equals("GUID"))
                {
                    Guid uid = reader.GetGuid(i);
                    entity.SetKey(new ServerEntityKey(entity.Name, uid));
                    continue;
                }

                if (columnName.Equals(entity.Name) && columnName.Contains("Enum"))
                    columnName = "Enum";

                PropertyInfo prop;
				
                if (!propMap.TryGetValue(columnName, out prop))
                    throw new EntityNotFoundException("Unable to match column to property: " + columnName, null);

                if (columnName.Contains("GUID"))
                    columnName = columnName.Replace("GUID", "Key");

                if (reader.IsDBNull(i))
                {
                    prop.SetValue(entity, null, null);
                    continue;
                }

                Type propType = prop.PropertyType;
                if (propType == typeof(String))
                    prop.SetValue(entity, reader.GetString(i), null);
                else if (propType == typeof(ServerEntityKey))
                {
                    Guid uid = reader.GetGuid(i);
                    prop.SetValue(entity, new ServerEntityKey(columnName.Replace("Key", String.Empty), uid), null);
                }
                else if (propType == typeof(DateTime))
                    prop.SetValue(entity, reader.GetDateTime(i), null);
                else if (propType == typeof(DateTime?))
                {
                    if (reader.IsDBNull(i))
                    {
                        prop.SetValue(entity, null, null);
                    }
                    else
                    {
                        prop.SetValue(entity, reader.GetDateTime(i), null);
                    }
                    
                }
                else if (propType == typeof(bool))
                    prop.SetValue(entity, reader.GetBoolean(i), null);
                else if (propType == typeof(Int32))
                    prop.SetValue(entity, reader.GetInt32(i), null);
                else if (propType == typeof(Int16))
                    prop.SetValue(entity, reader.GetInt16(i), null);
                else if (propType == typeof(double))
                    prop.SetValue(entity, reader.GetDouble(i), null);
                else if (propType == typeof(Decimal))
                    prop.SetValue(entity, reader.GetDecimal(i), null);
                else if (propType == typeof(float))
                    prop.SetValue(entity, reader.GetFloat(i), null);
                else if (propType == typeof(XmlDocument))
                {
                    SqlXml xml = reader.GetSqlXml(i);
                    if (xml!=null && !xml.IsNull)
                    {
                        XmlReader xmlReader = xml.CreateReader();
                        if (xmlReader != null)
                        {
                            XmlDocument xmlDoc = new XmlDocument();
                            xmlDoc.Load(xmlReader);
                            prop.SetValue(entity, xmlDoc, null);
                        }
                        else
                            prop.SetValue(entity, null, null);
                    }
                    else
                    {
                        prop.SetValue(entity, null, null);
                    }
                }
                else if (typeof(ServerEnum).IsAssignableFrom(propType))
                {
                    short enumVal = reader.GetInt16(i);
                    ConstructorInfo construct = prop.PropertyType.GetConstructor(new Type[0]);
                    ServerEnum val = (ServerEnum)construct.Invoke(null);
                    val.SetEnum(enumVal);
                    prop.SetValue(entity, val, null);
                }
                else
                    throw new EntityNotFoundException("Unsupported property type: " + propType, null);
            }
        }
Example #32
0
        ///////////////////////////////////////////////////////////////////////////
        // Grab pet information packet
        ///////////////////////////////////////////////////////////////////////////
        public static byte[] Pet_Information_grab(pet_obj o, byte slot)
        {
            PacketWriter Writer = new PacketWriter();

            Writer.Create(Systems.SERVER_PET_INFORMATION);
            try
            {
                //////////////////////////////////////////////////////////////////////////////////////
                // Grabpet structure
                //////////////////////////////////////////////////////////////////////////////////////
                Writer.DWord(o.UniqueID);                   //Unique ID
                Writer.DWord(o.Model);                      //Pet Model
                Writer.DWord(0x00006D);                     //Settings
                Writer.DWord(0x00006D);                     //Settings
                Writer.DWord(0x000047);                     //Settings 0x47 grab pet active 0 disabled
                if (o.Petname != "No name")                 //###############
                {
                    Writer.Text(o.Petname);                 // Name region
                }
                else                                        //
                {
                    Writer.Word(0);                         //###############
                }
                Writer.Byte(o.Slots);                       //Slots count inventory pet
                //////////////////////////////////////////////////////////////////////////////////////
                // Grabpet item inventory
                //////////////////////////////////////////////////////////////////////////////////////
                Systems.MsSQL ms = new Systems.MsSQL("SELECT * FROM char_items WHERE owner='" + o.OwnerID + "' AND pet_storage_id='" + o.UniqueID + "'");
                Writer.Byte(ms.Count());
                using (System.Data.SqlClient.SqlDataReader reader = ms.Read())
                {
                    while (reader.Read())
                    {
                        Item.AddItemPacket(Writer, reader.GetByte(5), reader.GetInt32(2), reader.GetByte(4), reader.GetInt16(6), reader.GetInt32(7), reader.GetInt32(0), reader.GetInt32(9), reader.GetInt32(30));
                    }
                }
                ms.Close();
                //////////////////////////////////////////////////////////////////////////////////////
                // Other
                //////////////////////////////////////////////////////////////////////////////////////
                Writer.DWord(o.OwnerID);                    //Character ID
                Writer.Byte(slot);                          //Slot location of the pet
                //////////////////////////////////////////////////////////////////////////////////////
            }
            catch (Exception ex)
            {
                Console.WriteLine("Pet load error: " + ex);
            }
            return(Writer.GetBytes());
        }
Example #33
0
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////
        // Character listening packet
        ////////////////////////////////////////////////////////////////////////////////////////////////////////////
        public static byte[] CharacterListing(string name)
        {
            
            Systems.MsSQL ms    = new Systems.MsSQL("SELECT TOP 4 * FROM character WHERE account='" + name + "'");
            PacketWriter Writer = new PacketWriter();

            Writer.Create(Systems.SERVER_CHARACTERSCREEN);      // Select opcode
            Writer.Byte(2);                                     // Static byte 2
            Writer.Byte(1);                                     // Static byte 1
            Writer.Byte(ms.Count());                            // Byte Character Count

            using (System.Data.SqlClient.SqlDataReader reader = ms.Read())
            {
                while (reader.Read())
                {
                    Writer.DWord(reader.GetInt32(3));           // DWord Skin Model
                    Writer.Text(reader.GetString(2));           // String Name
 
                    Writer.Byte(reader.GetByte(4));             // Byte Skin Volume
                    Writer.Byte(reader.GetByte(5));             // Byte Level

                    Writer.LWord(reader.GetInt64(12));          // Long Experience

                    Writer.Word(reader.GetInt16(6));            // Word STR
                    Writer.Word(reader.GetInt16(7));            // Word INT
                    Writer.Word(reader.GetInt16(8));            // Attribute points
                    
                    Writer.DWord(reader.GetInt32(9));           // HP
                    Writer.DWord(reader.GetInt32(10));          // MP

                    TimeSpan ts = Convert.ToDateTime(reader.GetDateTime(43)) - DateTime.Now;
                    double time = ts.TotalMinutes;

                    if (Math.Round(time) > 0)
                    {
                        Writer.Byte(1);
                        Writer.DWord(Math.Round(time));
                    }
                    else
                    {
                        Writer.Byte(0);
                    }

                    if (Math.Round(time) < 0 && DateTime.Now != reader.GetDateTime(43))
                    {
                        Systems.MsSQL.UpdateData("UPDATE character SET deleted='1' Where id='" + reader.GetInt32(0) + "'");
                    }

                    Writer.Word(0);
                    Writer.Byte(0);

                    Function.Items.PrivateItemPacket(Writer, reader.GetInt32(0), 8, 0,false);
                    Function.Items.PrivateItemPacket(Writer, reader.GetInt32(0), 5, 1,false);
                }
                //Jobtype information
                int jobinfo = Systems.MsSQL.GetDataInt("SELECT * FROM users WHERE id='"+ name +"'", "jobtype");
                Writer.Byte(Convert.ToByte(jobinfo));
            }
            ms.Close();

            return Writer.GetBytes();
        }
Example #34
0
        public static TopicInfo CopyTopicToBO(SqlDataReader rdr)
        {
            TopicInfo topic;
            try
            {
                topic = new TopicInfo
            {
                Id = rdr.GetInt32(0),
                CatId = rdr.GetInt32(1),
                ForumId = rdr.GetInt32(2),
                Status = rdr.GetInt16(3),
                Subject = rdr.SafeGetString(4),
                AuthorId = rdr.GetInt32(5),
                ReplyCount = rdr.GetInt32(6),
                Views = rdr.GetInt32(7),
                LastPostDate = rdr.SafeGetString(8).ToDateTime(),
                Date = rdr.SafeGetString(9).ToDateTime().Value,
                PosterIp = rdr.SafeGetString(10),
                LastPostAuthorId = rdr.SafeGetInt32(11),
                IsSticky = rdr.GetInt16(12) == 1,
                LastEditDate = rdr.SafeGetString(13).ToDateTime(),
                LastEditedById = rdr.SafeGetInt32(14),
                UseSignatures = rdr.GetInt16(15) == 1,
                LastReplyId = rdr.SafeGetInt32(16),
                UnModeratedReplies = rdr.GetInt32(17),
                Message = rdr.SafeGetString(18)

            };
                if (rdr.FieldCount > 19)
                {
                    topic.LastPostAuthorName = rdr.SafeGetString(19);
                    topic.AuthorName = rdr.SafeGetString(20);
                    topic.EditorName = rdr.SafeGetString(21);
                    if (rdr.FieldCount > 22)
                    {
                        topic.AuthorViewSig = rdr.GetInt16(22) == 1;
                        topic.AuthorSignature = rdr.SafeGetString(23);
                    }
                }
            }
            catch (System.Exception)
            {
                return null;
            }

            return topic;
        }
 internal static void FillCompatibleITypedSettersFromReader(SmiEventSink_Default sink, ITypedSettersV3 setters, SmiMetaData[] metaData, SqlDataReader reader)
 {
     for (int i = 0; i < metaData.Length; i++)
     {
         if (reader.IsDBNull(i))
         {
             SetDBNull_Unchecked(sink, setters, i);
             continue;
         }
         switch (metaData[i].SqlDbType)
         {
             case SqlDbType.BigInt:
             {
                 SetInt64_Unchecked(sink, setters, i, reader.GetInt64(i));
                 continue;
             }
             case SqlDbType.Binary:
             {
                 SetSqlBytes_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0);
                 continue;
             }
             case SqlDbType.Bit:
             {
                 SetBoolean_Unchecked(sink, setters, i, reader.GetBoolean(i));
                 continue;
             }
             case SqlDbType.Char:
             {
                 SetSqlChars_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlChars(i), 0);
                 continue;
             }
             case SqlDbType.DateTime:
             {
                 SetDateTime_Checked(sink, setters, i, metaData[i], reader.GetDateTime(i));
                 continue;
             }
             case SqlDbType.Decimal:
             {
                 SetSqlDecimal_Unchecked(sink, setters, i, reader.GetSqlDecimal(i));
                 continue;
             }
             case SqlDbType.Float:
             {
                 SetDouble_Unchecked(sink, setters, i, reader.GetDouble(i));
                 continue;
             }
             case SqlDbType.Image:
             {
                 SetSqlBytes_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0);
                 continue;
             }
             case SqlDbType.Int:
             {
                 SetInt32_Unchecked(sink, setters, i, reader.GetInt32(i));
                 continue;
             }
             case SqlDbType.Money:
             {
                 SetSqlMoney_Unchecked(sink, setters, i, metaData[i], reader.GetSqlMoney(i));
                 continue;
             }
             case SqlDbType.NChar:
             case SqlDbType.NText:
             case SqlDbType.NVarChar:
             {
                 SetSqlChars_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlChars(i), 0);
                 continue;
             }
             case SqlDbType.Real:
             {
                 SetSingle_Unchecked(sink, setters, i, reader.GetFloat(i));
                 continue;
             }
             case SqlDbType.UniqueIdentifier:
             {
                 SetGuid_Unchecked(sink, setters, i, reader.GetGuid(i));
                 continue;
             }
             case SqlDbType.SmallDateTime:
             {
                 SetDateTime_Checked(sink, setters, i, metaData[i], reader.GetDateTime(i));
                 continue;
             }
             case SqlDbType.SmallInt:
             {
                 SetInt16_Unchecked(sink, setters, i, reader.GetInt16(i));
                 continue;
             }
             case SqlDbType.SmallMoney:
             {
                 SetSqlMoney_Checked(sink, setters, i, metaData[i], reader.GetSqlMoney(i));
                 continue;
             }
             case SqlDbType.Text:
             {
                 SetSqlChars_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlChars(i), 0);
                 continue;
             }
             case SqlDbType.Timestamp:
             {
                 SetSqlBytes_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0);
                 continue;
             }
             case SqlDbType.TinyInt:
             {
                 SetByte_Unchecked(sink, setters, i, reader.GetByte(i));
                 continue;
             }
             case SqlDbType.VarBinary:
             {
                 SetSqlBytes_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0);
                 continue;
             }
             case SqlDbType.VarChar:
             {
                 SetSqlChars_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlChars(i), 0);
                 continue;
             }
             case SqlDbType.Variant:
             {
                 object sqlValue = reader.GetSqlValue(i);
                 ExtendedClrTypeCode typeCode = MetaDataUtilsSmi.DetermineExtendedTypeCode(sqlValue);
                 SetCompatibleValue(sink, setters, i, metaData[i], sqlValue, typeCode, 0);
                 continue;
             }
             case SqlDbType.Xml:
             {
                 SetSqlXml_Unchecked(sink, setters, i, reader.GetSqlXml(i));
                 continue;
             }
             case SqlDbType.Udt:
             {
                 SetSqlBytes_LengthChecked(sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0);
                 continue;
             }
         }
         throw ADP.NotSupported();
     }
 }
Example #36
0
        public static MemberInfo CopyMemberToBO(SqlDataReader rdr)
        {
            MemberInfo member = null;
            try
            {
                member = new MemberInfo
                                        {
                                            Id = rdr.GetInt32(0),
                                            Status = rdr.GetInt16(1),
                                            Username = rdr.GetString(2),
                                            NTUsername = rdr.SafeGetString(3),
                                            Email = rdr.SafeGetString(4),
                                            Country = rdr.SafeGetString(5),
                                            HomePage = rdr.SafeGetString(6),
                                            Signature = rdr.SafeGetString(7),
                                            MemberLevel = rdr.GetInt16(8),
                                            AIM = rdr.SafeGetString(9),
                                            Yahoo = rdr.SafeGetString(10),
                                            ICQ = rdr.SafeGetString(11),
                                            MSN = rdr.SafeGetString(12),
                                            PostCount = rdr.SafeGetInt32(13) ?? 0,
                                            MemberSince = rdr.SafeGetString(14).ToDateTime().Value,
                                            LastVisitDate = rdr.SafeGetString(15).ToDateTime(),
                                            LastPostDate = rdr.SafeGetString(16).ToDateTime(),
                                            Title = rdr.SafeGetString(17), //MemberTitle(rdr.SafeGetString(17)),
                                            AllowSubscriptions = (rdr["M_SUBSCRIPTION"] as int?) == 1,
                                            HideEmail = (rdr["M_HIDE_EMAIL"] as int?) == 1,
                                            ReceiveEmails = (rdr["M_RECEIVE_EMAIL"] as int?) == 1,
                                            MembersIP = rdr.SafeGetString(21),
                                            ViewSignatures = (rdr["M_VIEW_SIG"] as int?) == 1,
                                            UseSignature = (rdr["M_SIG_DEFAULT"] as int?) == 1,
                                            Voted = (rdr["M_VOTED"] as int?) == 1,
                                            AllowEmail = (rdr["M_ALLOWEMAIL"] as int?) == 1,
                                            Avatar = rdr.SafeGetString(26),
                                            Theme = rdr.SafeGetString(27),
                                            TimeOffset = rdr.GetInt32(28),
                                            DateOfBirth = rdr.SafeGetString(29)
                                        };
            }
            catch(Exception ex)
            {
                SqlDataReader rdrtest = rdr;
                string test = ex.Message;
            }

            string title = member.Title;
            member.Rank = new RankInfo(member.Username,ref title,member.PostCount);
            member.Title = title;
            return member;
        }
 private void init(SqlDataReader reader)
 {
     /*
      [Id], Guid, Email,CompanyName,Name, Gender, Address, PhoneNumber, ZIP, Website,
     Nature,FoundedYear,RegDate,CompanyBrief,
     ServiceAreas,Categories, Industries, CategoryLeadsNum,
     GeneralScore, Priority,RecommCount,LeadsEvalTimes,S_AVG,R_AVG,Q_AVG,V_AVG
      */
     id = reader.GetInt32(0);
     guid = reader.GetString(1);
     email = reader.GetString(2);
     companyName = reader.GetString(3);
     name = reader.GetString(4);
     gender = reader.GetString(5) == "M" ? "����" : "Ůʿ";
     address = reader.GetString(6);
     phoneNumber = reader.GetString(7);
     zip = reader.GetString(8);
     website = reader.GetString(9);
     nature = reader.GetString(10);
     foundedYear = reader.GetInt16(11);
     regDate = reader.GetDateTime(12);
     companyBrief = reader.GetString(13);
     serviceAreas = reader.GetString(14).Replace(" ", ""); ;
     categories = reader.GetString(15).Replace(" ", ""); ;
     industries = reader.GetString(16).Replace(" ", ""); ;
     categoryLeadsNum = reader.GetString(17);
     generalScore = Convert.ToSingle(reader.GetValue(18));
     priority = reader.GetInt32(19);
     recommendCount = reader.IsDBNull(20) ? 0 : reader.GetInt32(20);
     leadsEvalTimes = reader.IsDBNull(21) ? 0 : reader.GetInt32(21);
     specialtyAvg = Convert.ToSingle(reader.GetValue(22));
     responsibilityAvg = Convert.ToSingle(reader.GetValue(23));
     qualityAvg = Convert.ToSingle(reader.GetValue(24));
     valuablyAvg = Convert.ToSingle(reader.GetValue(25));
     GetMatchStatus();
 }
Example #38
0
 public static System.DateTime getFieldValue(SqlDataReader dr, int ind, System.DateTime def)
 {
     System.DateTime val = def;
     if (!dr.IsDBNull(ind))
     {
         System.TypeCode tp = System.Type.GetTypeCode(dr.GetFieldType(ind));
         System.TypeCode typeCode = tp;
         switch (typeCode)
         {
             case System.TypeCode.Byte:
                 val = System.Convert.ToDateTime(dr.GetByte(ind));
                 break;
             case System.TypeCode.Int16:
                 val = System.Convert.ToDateTime(dr.GetInt16(ind));
                 break;
             case System.TypeCode.UInt16:
                 break;
             case System.TypeCode.Int32:
                 val = System.Convert.ToDateTime(dr.GetInt32(ind));
                 break;
             default:
                 if (typeCode == System.TypeCode.DateTime)
                 {
                     val = dr.GetDateTime(ind);
                 }
                 break;
         }
     }
     return val;
 }
        private List<Column> GetColumns(SqlDataReader reader)
        {
            var list = new List<Column>();

            while (reader.Read())
            {
                var column = new Column();
                column.Name = reader.GetString(0);
                column.Type = reader.GetString(1);
                column.Length = reader.GetInt16(2);
                column.IsNullable = reader.GetInt32(3) == 0;
                if (reader.FieldCount >= 5)
                {
                    column.Scale = reader.GetByte(4);
                    column.Precision = reader.GetByte(5);
                    column.IsPrimaryKey = reader.GetInt32(6) == 1;
                    column.Default = reader.GetString(7);

                    if (column.Default.StartsWith("(("))
                        column.Default = column.Default.Substring(1, column.Default.Length - 2);
                }

                list.Add(column);
            }

            return list;
        }
Example #40
0
        // Copy multiple fields from reader to ITypedSettersV3
        //  Assumes caller enforces that reader and setter metadata are compatible
        internal static void FillCompatibleITypedSettersFromReader( SmiEventSink_Default sink, ITypedSettersV3 setters, SmiMetaData[] metaData, SqlDataReader reader ) {
            for ( int i = 0; i < metaData.Length; i++ ) {
                if ( reader.IsDBNull(i) ) {
                    ValueUtilsSmi.SetDBNull_Unchecked( sink, setters, i );
                }
                else {
                    switch ( metaData[i].SqlDbType ) {
                        case SqlDbType.BigInt:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Int64 ) );
                            ValueUtilsSmi.SetInt64_Unchecked( sink, setters, i, reader.GetInt64(i) );
                            break;
                        case SqlDbType.Binary:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlBytes ) );
                            ValueUtilsSmi.SetSqlBytes_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0 );
                            break;
                        case SqlDbType.Bit:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Boolean ) );
                            SetBoolean_Unchecked( sink, setters, i, reader.GetBoolean(i) );
                            break;
                        case SqlDbType.Char:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlChars ) );
                            SetSqlChars_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlChars(i), 0 );
                            break;
                        case SqlDbType.DateTime:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.DateTime ) );
                            SetDateTime_Checked( sink, setters, i, metaData[i], reader.GetDateTime(i) );
                            break;
                        case SqlDbType.Decimal:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlDecimal ) );
                            SetSqlDecimal_Unchecked( sink, setters, i, reader.GetSqlDecimal(i) );
                            break;
                        case SqlDbType.Float:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Double ) );
                            SetDouble_Unchecked( sink, setters, i, reader.GetDouble(i) );
                            break;
                        case SqlDbType.Image:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlBytes ) );
                            SetSqlBytes_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0 );
                            break;
                        case SqlDbType.Int:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Int32 ) );
                            SetInt32_Unchecked( sink, setters, i, reader.GetInt32(i) );
                            break;
                        case SqlDbType.Money:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlMoney ) );
                            SetSqlMoney_Unchecked( sink, setters, i, metaData[i], reader.GetSqlMoney(i) );
                            break;
                        case SqlDbType.NChar:
                        case SqlDbType.NText:
                        case SqlDbType.NVarChar:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlChars ) );
                            SetSqlChars_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlChars(i), 0 );
                            break;
                        case SqlDbType.Real:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Single ) );
                            SetSingle_Unchecked( sink, setters, i, reader.GetFloat(i) );
                            break;
                        case SqlDbType.UniqueIdentifier:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Guid ) );
                            SetGuid_Unchecked( sink, setters, i, reader.GetGuid(i) );
                            break;
                        case SqlDbType.SmallDateTime:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.DateTime ) );
                            SetDateTime_Checked( sink, setters, i, metaData[i], reader.GetDateTime(i) );
                            break;
                        case SqlDbType.SmallInt:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Int16 ) );
                            SetInt16_Unchecked( sink, setters, i, reader.GetInt16(i) );
                            break;
                        case SqlDbType.SmallMoney:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlMoney ) );
                            SetSqlMoney_Checked( sink, setters, i, metaData[i], reader.GetSqlMoney(i) );
                            break;
                        case SqlDbType.Text:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlChars ) );
                            SetSqlChars_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlChars(i), 0 );
                            break;
                        case SqlDbType.Timestamp:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlBytes ) );
                            SetSqlBytes_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0 );
                            break;
                        case SqlDbType.TinyInt:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.Byte ) );
                            SetByte_Unchecked( sink, setters, i, reader.GetByte(i) );
                            break;
                        case SqlDbType.VarBinary:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlBytes ) );
                            SetSqlBytes_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0 );
                            break;
                        case SqlDbType.VarChar:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.String ) );
                            SetSqlChars_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlChars(i), 0 );
                            break;
                        case SqlDbType.Xml:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlXml ) );
                            SetSqlXml_Unchecked( sink, setters, i, reader.GetSqlXml(i) );
                            break;
                        case SqlDbType.Variant:
                            object o = reader.GetSqlValue(i);
                            ExtendedClrTypeCode typeCode = MetaDataUtilsSmi.DetermineExtendedTypeCode( o );
                            SetCompatibleValue( sink, setters, i, metaData[i], o, typeCode, 0 );
                            break;
                            
                        case SqlDbType.Udt:
                            Debug.Assert( CanAccessSetterDirectly( metaData[i], ExtendedClrTypeCode.SqlBytes ) );
                            SetSqlBytes_LengthChecked( sink, setters, i, metaData[i], reader.GetSqlBytes(i), 0 );
                            break;

                        default:
                            // In order for us to get here we would have to have an 
                            // invalid instance of SqlDbType, or one would have to add 
                            // new member to SqlDbType without adding a case in this 
                            // switch, hence the assert - it must be 

                            Debug.Assert( false, "unsupported DbType:" + metaData[i].SqlDbType.ToString() );
                            throw ADP.NotSupported();
                            
                    }
                }
            }
        }
Example #41
0
        /// <summary>
        /// Creates a new instance of the APM class and populates it with data from the specified SqlDataReader.
        /// </summary>
        private static APMInfo MakeAPM(SqlDataReader dataReader)
        {
            APMInfo aPM = new APMInfo();

            if (dataReader.IsDBNull(Cod_APM) == false)
                aPM.Cod_APM = dataReader.GetInt32(Cod_APM);
            if (dataReader.IsDBNull(Cod_Delegacion) == false)
                aPM.Cod_Delegacion = dataReader.GetInt32(Cod_Delegacion);
            if (dataReader.IsDBNull(Codigo_Completo) == false)
                aPM.Codigo_Completo = dataReader.GetString(Codigo_Completo);
            if (dataReader.IsDBNull(Numero_APM) == false)
                aPM.Numero_APM = dataReader.GetString(Numero_APM);
            if (dataReader.IsDBNull(Apellido) == false)
                aPM.Apellido = dataReader.GetString(Apellido);
            if (dataReader.IsDBNull(Nombre) == false)
                aPM.Nombre = dataReader.GetString(Nombre);
            if (dataReader.IsDBNull(Fecha_Nacimiento) == false)
                aPM.Fecha_Nacimiento = dataReader.GetDateTime(Fecha_Nacimiento);
            if (dataReader.IsDBNull(Cod_Nacionalidad) == false)
                aPM.Cod_Nacionalidad = dataReader.GetInt32(Cod_Nacionalidad);
            if (dataReader.IsDBNull(Cod_Direccion) == false)
                aPM.Cod_Direccion = dataReader.GetInt32(Cod_Direccion);
            if (dataReader.IsDBNull(Cod_Modelo) == false)
                aPM.Cod_Modelo = dataReader.GetInt32(Cod_Modelo);
            if (dataReader.IsDBNull(Fecha_Ingreso) == false)
                aPM.Fecha_Ingreso = dataReader.GetDateTime(Fecha_Ingreso);
            if (dataReader.IsDBNull(Fecha_Egreso) == false)
                aPM.Fecha_Egreso = dataReader.GetDateTime(Fecha_Egreso);
            if (dataReader.IsDBNull(Ultima_Conexion) == false)
                aPM.Ultima_Conexion = dataReader.GetDateTime(Ultima_Conexion);
            if (dataReader.IsDBNull(Ultimo_Proceso) == false)
                aPM.Ultimo_Proceso = dataReader.GetDateTime(Ultimo_Proceso);
            if (dataReader.IsDBNull(Skip) == false)
                aPM.Skip = dataReader.GetInt16(Skip);
            if (dataReader.IsDBNull(Foto) == false)
                aPM.Foto = new Byte[Convert.ToInt32(dataReader.GetBytes(0, 0, null, 0, Int32.MaxValue))];
                dataReader.GetBytes(0, 0, aPM.Foto, 0, aPM.Foto.Length);
            if (dataReader.IsDBNull(Blocking_Days) == false)
                aPM.Blocking_Days = dataReader.GetInt16(Blocking_Days);
            if (dataReader.IsDBNull(Proc_Id) == false)
                aPM.Proc_Id = dataReader.GetInt32(Proc_Id);
            if (dataReader.IsDBNull(UserName) == false)
                aPM.UserName = dataReader.GetString(UserName);
            if (dataReader.IsDBNull(Password) == false)
                aPM.Password = dataReader.GetString(Password);
            if (dataReader.IsDBNull(Email) == false)
                aPM.Email = dataReader.GetString(Email);
            if (dataReader.IsDBNull(Download) == false)
                aPM.Download = dataReader.GetDateTime(Download);
            if (dataReader.IsDBNull(External_Code) == false)
                aPM.External_Code = dataReader.GetString(External_Code);
            if (dataReader.IsDBNull(Action) == false)
                aPM.Action = dataReader.GetString(Action);
            if (dataReader.IsDBNull(Change_Del) == false)
                aPM.Change_Del = dataReader.GetBoolean(Change_Del);
            if (dataReader.IsDBNull(SyncID) == false)
                aPM.SyncID = dataReader.GetGuid(SyncID);
            if (dataReader.IsDBNull(SyncTimeStamp) == false)
                aPM.SyncTimeStamp = DateTime.MinValue;

            return aPM;
        }
Example #42
0
        Patient getNextPatient(SqlDataReader reader)
        {
            Patient p = new Patient();
            p.LocalSiteId = (reader.GetInt16(reader.GetOrdinal("sitecode"))).ToString();

            Decimal d = Convert.ToDecimal(reader.GetDecimal(reader.GetOrdinal("localPid")));
            if ((d - Math.Floor(d)) > 0)
            {
                p.LocalPid = (d).ToString();
            }
            else
            {
                p.LocalPid = (Convert.ToInt64(d)).ToString();
            }
            p.Name = new PersonName(reader.GetString(reader.GetOrdinal("name")));
            p.SSN = new SocSecNum(reader.GetString(reader.GetOrdinal("ssn")));

            if (!reader.IsDBNull(reader.GetOrdinal("gender")))
            {
                p.Gender = reader.GetBoolean(reader.GetOrdinal("gender")) ? "M" : "F"; // 1 or true == male, 0 or false == female
            }
            else
            {
                p.Gender = "";
            }
            if (!reader.IsDBNull(reader.GetOrdinal("vistaDOB")))
            {
                p.DOB = reader.GetString(reader.GetOrdinal("vistaDOB"));
            }
            p.MpiPid = (reader.GetInt32(reader.GetOrdinal("icn"))).ToString();
            p.MpiChecksum = (reader.GetInt32(reader.GetOrdinal("icnx"))).ToString();

            p.Demographics = new Dictionary<string, DemographicSet>();
            DemographicSet demogs = new DemographicSet();
            demogs.PhoneNumbers = new List<PhoneNum>();
            demogs.EmailAddresses = new List<EmailAddress>();
            demogs.StreetAddresses = new List<Address>();

            if (!reader.IsDBNull(reader.GetOrdinal("homePhone")))
            {
                demogs.PhoneNumbers.Add(new PhoneNum(reader.GetString(reader.GetOrdinal("homePhone"))));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("workPhone")))
            {
                demogs.PhoneNumbers.Add(new PhoneNum(reader.GetString(reader.GetOrdinal("workPhone"))));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("cellPhone")))
            {
                demogs.PhoneNumbers.Add(new PhoneNum(reader.GetString(reader.GetOrdinal("cellPhone"))));
            }

            if (!reader.IsDBNull(reader.GetOrdinal("emailAddress")))
            {
                demogs.EmailAddresses.Add(new EmailAddress(reader.GetString(reader.GetOrdinal("emailAddress"))));
            }

            Address address = new Address();
            if (!reader.IsDBNull(reader.GetOrdinal("addressLine1")))
            {
                address.Street1 = reader.GetString(reader.GetOrdinal("addressLine1"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("addressLine2")))
            {
                address.Street2 = reader.GetString(reader.GetOrdinal("addressLine2"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("addressLine3")))
            {
                address.Street3 = reader.GetString(reader.GetOrdinal("addressLine3"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("city")))
            {
                address.City = reader.GetString(reader.GetOrdinal("city"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("county")))
            {
                address.County = reader.GetString(reader.GetOrdinal("county"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("state")))
            {
                address.State = reader.GetString(reader.GetOrdinal("state"));
            }
            if (!reader.IsDBNull(reader.GetOrdinal("zipcode")))
            {
                address.Zipcode = reader.GetString(reader.GetOrdinal("zipcode"));
            }
            demogs.StreetAddresses.Add(address);

            p.Demographics.Add(p.LocalSiteId, demogs);

            return p;
        }
Example #43
0
        public static byte[] Load(character c)
        {

            PacketWriter Writer = new PacketWriter();
            Writer.Create(Systems.SERVER_PLAYERDATA);
            /////////////////////////////////////////////////////// Character basic info
            #region Basic info   
            Writer.DWord(c.Ids.GetLoginID);
            Writer.DWord(c.Information.Model);
            Writer.Byte(c.Information.Volume);
            Writer.Byte(c.Information.Level);
            Writer.Byte(c.Information.Level);
            Writer.LWord(c.Information.XP);
            Writer.DWord(c.Information.SpBar);
            Writer.LWord(c.Information.Gold);
            Writer.DWord(c.Information.SkillPoint);
            Writer.Word(c.Information.Attributes);
            Writer.Byte(c.Information.BerserkBar);
            Writer.DWord(0);
            Writer.DWord(c.Stat.SecondHp);
            Writer.DWord(c.Stat.SecondMP);
            Writer.Bool(c.Information.Level < 20 ? true : false);
            #endregion
            /////////////////////////////////////////////////////// Character Player Kill Info
            #region Pk information
            //Mssql perfection reading with multiple data adapters... while this one is open i can still read anything else from the database
            //With no speed reduction...
            Systems.MsSQL checkpk = new Systems.MsSQL("SELECT * FROM character WHERE name ='" + c.Information.Name + "'");
            using (System.Data.SqlClient.SqlDataReader getinfo = checkpk.Read())
            {
                while (getinfo.Read())
                {
                    byte dailypk = getinfo.GetByte(48);
                    byte pklevel = getinfo.GetByte(49);
                    byte murderlevel = getinfo.GetByte(50);

                    Writer.Byte(dailypk);
                    Writer.Word(pklevel);
                    Writer.DWord(murderlevel);
                    if (murderlevel != 0) c.Information.Murderer = true;
                }
            }
            #endregion
            /////////////////////////////////////////////////////// Character Title
            #region Title
            Writer.Byte(c.Information.Title);
            #endregion
            /////////////////////////////////////////////////////// Character Pvpstate
            #region Pvp
            Writer.Byte(c.Information.Pvpstate);
            if (c.Information.Pvpstate > 0) 
                c.Information.PvP = true;
            #endregion
            /////////////////////////////////////////////////////// Character Items
            #region Item
            
            Writer.Byte(c.Information.Slots);

            Systems.MsSQL ms = new Systems.MsSQL("SELECT * FROM char_items WHERE owner='" + c.Information.CharacterID + "' AND slot >= '0' AND slot <= '" + c.Information.Slots + "' AND inavatar='0' AND storagetype='0'");
            Writer.Byte(ms.Count());
            using (System.Data.SqlClient.SqlDataReader msreader = ms.Read())
            {

                while (msreader.Read())
                {

                    short amount = msreader.GetInt16(6);

                    if (amount < 1) amount = 1;
                    Systems.MsSQL.InsertData("UPDATE char_items SET quantity='" + amount + "' WHERE owner='" + c.Information.CharacterID + "' AND itemid='" + msreader.GetInt32(2) + "' AND id='" + msreader.GetInt32(0) + "' AND storagetype='0'");

                    if (msreader.GetByte(5) == 6)
                        c.Information.Item.wID = Convert.ToInt32(msreader.GetInt32(2));
                    if (msreader.GetByte(5) == 7)
                    {
                        c.Information.Item.sID = msreader.GetInt32(2);
                        c.Information.Item.sAmount = msreader.GetInt16(6);
                    }
                    
                    Item.AddItemPacket(Writer, msreader.GetByte(5), msreader.GetInt32(2), msreader.GetByte(4), amount, msreader.GetInt32(7),msreader.GetInt32(0), msreader.GetInt32(9), msreader.GetInt32(30));
                }
            }
            ms.Close();

            //Avatar
            Writer.Byte(5);

            ms = new Systems.MsSQL("SELECT * FROM char_items WHERE owner='" + c.Information.CharacterID + "' AND slot >= '0' AND slot <= '" + c.Information.Slots + "' AND inavatar='1' AND storagetype='0'");

            Writer.Byte(ms.Count());
            using (System.Data.SqlClient.SqlDataReader msreader = ms.Read())
            {
                while (msreader.Read())
                {
                    Item.AddItemPacket(Writer, msreader.GetByte(5), msreader.GetInt32(2), msreader.GetByte(4), msreader.GetInt16(6), msreader.GetInt32(7), msreader.GetInt32(0), msreader.GetInt32(9),msreader.GetInt32(30));
                }
            }
            ms.Close();

            Writer.Byte(0);

            // job mastery 
            Writer.Byte(0x0B);
            Writer.Byte(0);
            Writer.Byte(0);

            #endregion
            ///////////////////////////////////////////////////////  Mastery
            #region Mastery
            if (c.Information.Model <= 12000)
            {
                for (byte i = 1; i <= 8; i++)
                {
                    Writer.Byte(1);
                    Writer.DWord(c.Stat.Skill.Mastery[i]);
                    Writer.Byte(c.Stat.Skill.Mastery_Level[i]);
                }
            }
            else
            {
                if (c.Information.Model >= 14000)
                {
                    for (byte i = 1; i < 8; i++)
                    {
                        Writer.Byte(1);
                        Writer.DWord(c.Stat.Skill.Mastery[i]);
                        Writer.Byte(c.Stat.Skill.Mastery_Level[i]);
                    }
                }
            }
            #endregion
            /////////////////////////////////////////////////////// Skills
            #region Skill
            Writer.Byte(2);
            Writer.Byte(0);
                for (int i = 1; i <= c.Stat.Skill.AmountSkill; i++)
                {
                    Writer.Byte(1);
                    Writer.DWord(c.Stat.Skill.Skill[i]);
                    Writer.Byte(1);
                }
            Writer.Byte(2);
            #endregion
            /////////////////////////////////////////////////////// Quests
            #region Quest
            Writer.Word(1); // how many Quest ids completed/aborted
            Writer.DWord(1);// Quest id
            Writer.Byte(0);//number of Quests that are live
            #endregion
            Writer.Byte(0);//? for now
            /////////////////////////////////////////////////////// Talisman
            #region Talisman
            Writer.DWord(1);//new
            Writer.DWord(1);//new
            Writer.DWord(0);//? for now
            Writer.DWord(0x0C);//new
            #endregion
            /////////////////////////////////////////////////////// Position + id + speed
            #region Character id / Position / Speed
            Writer.DWord(c.Information.UniqueID);
            Writer.Byte(c.Position.xSec);
            Writer.Byte(c.Position.ySec);
            if (!File.FileLoad.CheckCave(c.Position.xSec, c.Position.ySec))
            {
                Writer.Float(Formule.packetx(c.Position.x, c.Position.xSec));
                Writer.Float(c.Position.z);
                Writer.Float(Formule.packety(c.Position.y, c.Position.ySec));
            }
            else
            {
                Writer.Float(Formule.cavepacketx(c.Position.x));// Added for cave Coords
                Writer.Float(c.Position.z);
                Writer.Float(Formule.cavepackety(c.Position.y));// Added for cave Coords

            }
            Writer.Word(0);							// Angle
            Writer.Byte(0);
            Writer.Byte(1);
            Writer.Byte(0);
            Writer.Word(0);							// Angle
            Writer.Word(0);
            Writer.Byte(0);
            Writer.Bool(false); //berserk

            Writer.Byte(0);//new ?

            Writer.Float(c.Speed.WalkSpeed);
            Writer.Float(c.Speed.RunSpeed);
            Writer.Float(c.Speed.BerserkSpeed);
            #endregion
            /////////////////////////////////////////////////////// Premium Tickets
            #region Premium ticket
            Writer.Byte(0); //ITEM_MALL_GOLD_TIME_SERVICE_TICKET_4W
            #endregion
            /////////////////////////////////////////////////////// GM Check + Name
            #region GM Check + Name
            Writer.Text(c.Information.Name);
            #endregion
            /////////////////////////////////////////////////////// Character jobs
            #region Character Job / hunter thief trader ( old job things )
                //Writer info with job name when on job
                /*if (c.Job.state == 1 && c.Job.Jobname != "0")
                {
                    Writer.Text(c.Job.Jobname);
                    Writer.Byte(3);
                    Writer.Byte(1);
                    Writer.DWord(0);
                    Writer.DWord(0);
                    Writer.DWord(0);
                    Writer.Byte(0);
                    Writer.Byte(0);
                    Writer.Byte(0);
                }
                //Write basic info noname
                if (c.Job.Jobname == "0")
                {
                    Writer.Word(0);
                    Writer.Byte(3);
                    Writer.Byte(1);
                    Writer.DWord(0);
                    Writer.DWord(0);
                    Writer.DWord(0);
                    Writer.Byte(0);
                    Writer.Byte(0);
                    Writer.Byte(0);
                }
                //Write no info
                else
                {
                    Writer.Word(0);
                    Writer.Byte(0);
                    Writer.Byte(1);
                    Writer.DWord(0);
                    Writer.DWord(0);
                    Writer.DWord(0);
                    Writer.Byte(0);
                    Writer.Byte(0);
                    Writer.Byte(0);
                }*/
            #endregion
            #region New job system
            if (c.Job.state == 1)
            {
                Writer.Text(c.Job.Jobname);
                Writer.Byte(1);
                Writer.Byte(c.Job.level);//Level job
                Writer.Byte(c.Information.Level);//Level char
                Writer.Byte(1); // job level? myb
                Writer.LWord(0);// job exp probably y
                Writer.Byte(0);
                Writer.Byte(0);
                Writer.Byte(0);
                Writer.Byte(0);
            }
            else
            {

                Writer.Word(0);
                Writer.Byte(0);
                Writer.Byte(0);
                Writer.Byte(2); // job type
                Writer.Byte(1); // job level? myb
                Writer.LWord(0);// job exp probably y
                Writer.Byte(0);
                Writer.Byte(0);
                Writer.Byte(0);
                Writer.Byte(0);
            }

            #endregion
                /////////////////////////////////////////////////////// Pvp / Pk State
            #region Pvp / Pk State
            if (c.Information.Pvpstate == 1 || c.Information.Murderer)
            {
                Writer.Byte(0x22);
            }
            else if (c.Information.Pvpstate == 0 || !c.Information.Murderer)
            {
                Writer.Byte(0xFF);
            }
            #endregion
            /////////////////////////////////////////////////////// Guide Data 
            #region Guide Data this data stacks on itself so if guide id is 0400000000000000 and next guide is 0300000000000000 the data to send is 0700000000000000

            for (int i = 0; i < 8; ++i)//Main Guide Packet Info
            {
                Writer.Byte(c.Guideinfo.G1[i]);//Reads From Int Array
            }
            #endregion
            /////////////////////////////////////////////////////// Account / Gm Check
            #region Account ID + Gm Check
            Writer.DWord(c.Account.ID);
            Writer.Byte(0);//c.Information.GM
            #endregion
            /////////////////////////////////////////////////////// Quickbar + Autopotion
            #region Bar information
            Writer.Byte(7);
            PacketReader reader = new PacketReader(System.IO.File.ReadAllBytes(Environment.CurrentDirectory + @"\player\info\quickbar\" + c.Information.Name + ".dat"));
            PlayerQuickBar(reader, Writer);
            reader = new PacketReader(System.IO.File.ReadAllBytes(Environment.CurrentDirectory + @"\player\info\autopot\" + c.Information.Name + ".dat"));
            PlayerAutoPot(reader, Writer);
            #endregion
            /////////////////////////////////////////////////////// Academy
            #region Academy
            Writer.Byte(0); // number of player in academy
            /* // if we have players there 
             Writer.Byte(1);
             Writer.Text("asd"); 
             */
            Writer.Byte(0);//added byte today for 1.310
            Writer.Byte(0);
            Writer.Word(1); 
            Writer.Word(1);
            Writer.Byte(0);
            Writer.Byte(1);
            #endregion
            return Writer.GetBytes();
        }