/// <summary>
        /// This method will get row(s) from the database using the value of the field specified
        /// along with the details of the child table.
        /// </summary>
        ///
        /// <param name="pk" type="SALSalesLinePrimaryKey">Primary Key information based on which data is to be fetched.</param>
        /// <param name="pageSize" type="int">Number of records returned.</param>
        /// <param name="skipPages" type="int">The number of missing pages.</param>
        /// <param name="orderByStatement" type="string">The field value to number</param>
        ///
        /// <returns>object of class SALSalesLineBatchCollection</returns>
        ///
        /// <remarks>
        ///
        /// <RevisionHistory>
        /// Author				Date			Description
        /// DLGenerator			12/26/2014 2:45:58 AM				Created function
        ///
        /// </RevisionHistory>
        ///
        /// </remarks>
        ///
        public static SALSalesLineBatchCollection SelectAllByForeignKeySalesLineIDPaged(SALSalesLinePrimaryKey pk, int pageSize, int skipPages, string orderByStatement)
        {
            DatabaseHelper oDatabaseHelper  = new DatabaseHelper();
            bool           ExecutionState   = false;
            SALSalesLineBatchCollection obj = null;

            // Pass the values of all key parameters to the stored procedure.
            System.Collections.Specialized.NameValueCollection nvc = pk.GetKeysAndValues();
            foreach (string key in nvc.Keys)
            {
                oDatabaseHelper.AddParameter("@" + key, nvc[key]);
            }
            oDatabaseHelper.AddParameter("@PageSize", pageSize);
            oDatabaseHelper.AddParameter("@SkipPages", skipPages);
            oDatabaseHelper.AddParameter("@OrderByStatement", orderByStatement);

            // The parameter '@dlgErrorCode' will contain the status after execution of the stored procedure.
            oDatabaseHelper.AddParameter("@dlgErrorCode", -1, System.Data.ParameterDirection.Output);

            IDataReader dr = oDatabaseHelper.ExecuteReader("gsp_SALSalesLineBatch_SelectAllByForeignKeySalesLineIDPaged", ref ExecutionState);

            obj = new SALSalesLineBatchCollection();
            obj = SALSalesLineBatch.PopulateObjectsFromReaderWithCheckingReader(dr, oDatabaseHelper);

            dr.Close();
            oDatabaseHelper.Dispose();
            return(obj);
        }
        /// <summary>
        /// Populates the fields for multiple objects from the columns found in an open reader.
        /// </summary>
        ///
        /// <param name="rdr" type="IDataReader">An object that implements the IDataReader interface</param>
        ///
        /// <returns>Object of SALSalesLineBatchCollection</returns>
        ///
        /// <remarks>
        ///
        /// <RevisionHistory>
        /// Author				Date			Description
        /// DLGenerator			12/26/2014 2:45:58 AM		Created function
        ///
        /// </RevisionHistory>
        ///
        /// </remarks>
        ///
        internal static SALSalesLineBatchCollection PopulateObjectsFromReader(IDataReader rdr)
        {
            SALSalesLineBatchCollection list = new SALSalesLineBatchCollection();

            while (rdr.Read())
            {
                SALSalesLineBatch obj = new SALSalesLineBatch();
                PopulateObjectFromReader(obj, rdr);
                list.Add(obj);
            }
            return(list);
        }
        /// <summary>
        /// This method will return a list of objects representing all records in the table.
        /// </summary>
        ///
        /// <returns>list of objects of class SALSalesLineBatch in the form of object of SALSalesLineBatchCollection </returns>
        ///
        /// <remarks>
        ///
        /// <RevisionHistory>
        /// Author				Date			Description
        /// DLGenerator			12/26/2014 2:45:58 AM		Created function
        ///
        /// </RevisionHistory>
        ///
        /// </remarks>
        ///
        public static SALSalesLineBatchCollection SelectAll()
        {
            DatabaseHelper oDatabaseHelper = new DatabaseHelper();
            bool           ExecutionState  = false;

            // The parameter '@dlgErrorCode' will contain the status after execution of the stored procedure.
            oDatabaseHelper.AddParameter("@dlgErrorCode", -1, System.Data.ParameterDirection.Output);

            IDataReader dr = oDatabaseHelper.ExecuteReader("gsp_SALSalesLineBatch_SelectAll", ref ExecutionState);
            SALSalesLineBatchCollection SALSalesLineBatchCollection = PopulateObjectsFromReader(dr);

            dr.Close();
            oDatabaseHelper.Dispose();
            return(SALSalesLineBatchCollection);
        }
        /// <summary>
        /// This method will return a list of objects representing the specified number of entries from the specified record number in the table.
        /// </summary>
        ///
        /// <param name="pageSize" type="int">Number of records returned.</param>
        /// <param name="skipPages" type="int">The number of missing pages.</param>
        /// <param name="orderByStatement" type="string">The field value to number</param>
        ///
        /// <returns>list of objects of class SALSalesLineBatch in the form of object of SALSalesLineBatchCollection </returns>
        ///
        /// <remarks>
        ///
        /// <RevisionHistory>
        /// Author				Date			Description
        /// DLGenerator			12/26/2014 2:45:58 AM		Created function
        ///
        /// </RevisionHistory>
        ///
        /// </remarks>
        ///
        public static SALSalesLineBatchCollection SelectAllPaged(int?pageSize, int?skipPages, string orderByStatement)
        {
            DatabaseHelper oDatabaseHelper = new DatabaseHelper();
            bool           ExecutionState  = false;

            // Pass the specified field and its value to the stored procedure.
            oDatabaseHelper.AddParameter("@PageSize", pageSize);
            oDatabaseHelper.AddParameter("@SkipPages", skipPages);
            oDatabaseHelper.AddParameter("@OrderByStatement", orderByStatement);

            // The parameter '@dlgErrorCode' will contain the status after execution of the stored procedure.
            oDatabaseHelper.AddParameter("@dlgErrorCode", -1, System.Data.ParameterDirection.Output);

            IDataReader dr = oDatabaseHelper.ExecuteReader("gsp_SALSalesLineBatch_SelectAllPaged", ref ExecutionState);
            SALSalesLineBatchCollection SALSalesLineBatchCollection = PopulateObjectsFromReader(dr);

            dr.Close();
            oDatabaseHelper.Dispose();
            return(SALSalesLineBatchCollection);
        }
        /// <summary>
        /// This method will get row(s) from the database using the value of the field specified
        /// </summary>
        ///
        /// <param name="field" type="string">Field of the class SALSalesLineBatch</param>
        /// <param name="fieldValue" type="object">Value for the field specified.</param>
        /// <param name="fieldValue2" type="object">Value for the field specified.</param>
        /// <param name="typeOperation" type="TypeOperation">Operator that is used if fieldValue2=null or fieldValue2="".</param>
        ///
        /// <returns>List of object of class SALSalesLineBatch in the form of an object of class SALSalesLineBatchCollection</returns>
        ///
        /// <remarks>
        ///
        /// <RevisionHistory>
        /// Author				Date			Description
        /// DLGenerator			12/26/2014 2:45:58 AM		Created function
        ///
        /// </RevisionHistory>
        ///
        /// </remarks>
        ///
        public static SALSalesLineBatchCollection SelectByField(string field, object fieldValue, object fieldValue2, TypeOperation typeOperation)
        {
            DatabaseHelper oDatabaseHelper = new DatabaseHelper();
            bool           ExecutionState  = false;

            // Pass the specified field and its value to the stored procedure.
            oDatabaseHelper.AddParameter("@Field", field);
            oDatabaseHelper.AddParameter("@Value", fieldValue);
            oDatabaseHelper.AddParameter("@Value2", fieldValue2);
            oDatabaseHelper.AddParameter("@Operation", OperationCollection.Operation[(int)typeOperation]);

            // The parameter '@dlgErrorCode' will contain the status after execution of the stored procedure.
            oDatabaseHelper.AddParameter("@dlgErrorCode", -1, System.Data.ParameterDirection.Output);

            IDataReader dr = oDatabaseHelper.ExecuteReader("gsp_SALSalesLineBatch_SelectByField", ref ExecutionState);
            SALSalesLineBatchCollection SALSalesLineBatchCollection = PopulateObjectsFromReader(dr);

            dr.Close();
            oDatabaseHelper.Dispose();
            return(SALSalesLineBatchCollection);
        }
        /// <summary>
        /// Populates the fields for multiple objects from the columns found in an open reader.
        /// </summary>
        ///
        /// <param name="rdr" type="IDataReader">An object that implements the IDataReader interface</param>
        ///
        /// <returns>Object of SALSalesLineBatchCollection</returns>
        ///
        /// <remarks>
        ///
        /// <RevisionHistory>
        /// Author				Date			Description
        /// DLGenerator			12/26/2014 2:45:58 AM		Created function
        ///
        /// </RevisionHistory>
        ///
        /// </remarks>
        ///
        internal static SALSalesLineBatchCollection PopulateObjectsFromReaderWithCheckingReader(IDataReader rdr, DatabaseHelper oDatabaseHelper)
        {
            SALSalesLineBatchCollection list = new SALSalesLineBatchCollection();

            if (rdr.Read())
            {
                SALSalesLineBatch obj = new SALSalesLineBatch();
                PopulateObjectFromReader(obj, rdr);
                list.Add(obj);
                while (rdr.Read())
                {
                    obj = new SALSalesLineBatch();
                    PopulateObjectFromReader(obj, rdr);
                    list.Add(obj);
                }
                oDatabaseHelper.Dispose();
                return(list);
            }
            else
            {
                oDatabaseHelper.Dispose();
                return(null);
            }
        }
 public Enumerator(SALSalesLineBatchCollection t)
 {
     this.t = t;
 }