/// <summary>
        /// Save
        /// </summary>
        /// <param name="requestId">requestId</param>
        public void Save(int requestId)
        {
            VacationsAddTDS vacationsAddChanges = (VacationsAddTDS)Data.GetChanges();

            if (vacationsAddChanges.DaysInformation.Rows.Count > 0)
            {
                foreach (VacationsAddTDS.DaysInformationRow row in (VacationsAddTDS.DaysInformationDataTable)vacationsAddChanges.DaysInformation)
                {
                    // Insert
                    if ((!row.Deleted) && (!row.InDatabase))
                    {
                        VacationDays vacationDays = new VacationDays(null);
                        vacationDays.InsertDirect(requestId, row.StartDate, row.EndDate, row.Description, row.PaymentType, row.Deleted, row.COMPANY_ID);
                    }
                }
            }
        }
        /// <summary>
        /// Save
        /// </summary>
        public void Save()
        {
            VacationsInformationTDS vacationsInformationChanges = (VacationsInformationTDS)Data.GetChanges();

            if (vacationsInformationChanges.DaysInformation.Rows.Count > 0)
            {
                VacationsInformationDaysInformationGateway vacationsInformationDaysInformationGateway = new VacationsInformationDaysInformationGateway(vacationsInformationChanges);

                foreach (VacationsInformationTDS.DaysInformationRow row in (VacationsInformationTDS.DaysInformationDataTable)vacationsInformationChanges.DaysInformation)
                {
                    // Insert new vacation day
                    if ((!row.Deleted) && (!row.InDatabase))
                    {
                        int requestId = row.RequestID;

                        VacationDays vacationDays = new VacationDays(null);
                        vacationDays.InsertDirect(requestId, row.StartDate, row.EndDate, row.Description, row.PaymentType, row.Deleted, row.COMPANY_ID);
                    }

                    // Update vacation day
                    if ((!row.Deleted) && (row.InDatabase))
                    {
                        int vacationId = row.VacationID;
                        int requestId = row.RequestID;
                        bool deleted = row.Deleted;
                        int companyId = row.COMPANY_ID;

                        // original values
                        DateTime originalStartDate = vacationsInformationDaysInformationGateway.GetStartDateOriginal(vacationId);
                        DateTime originalEndDate = vacationsInformationDaysInformationGateway.GetEndDateOriginal(vacationId);
                        string originalDescription = vacationsInformationDaysInformationGateway.GetDescriptionOriginal(vacationId);
                        string originalPaymentType = vacationsInformationDaysInformationGateway.GetPaymentTypeOriginal(vacationId);

                        // new values
                        DateTime newStartDate = vacationsInformationDaysInformationGateway.GetStartDate(vacationId);
                        DateTime newEndDate = vacationsInformationDaysInformationGateway.GetEndDate(vacationId);
                        string newDescription = vacationsInformationDaysInformationGateway.GetDescription(vacationId);
                        string newPaymentType = vacationsInformationDaysInformationGateway.GetPaymentType(vacationId);

                        VacationDays vacationDays = new VacationDays(null);
                        vacationDays.UpdateDirect(vacationId, requestId, originalStartDate, originalEndDate, originalDescription, originalPaymentType, deleted, companyId, vacationId, requestId, newStartDate, newEndDate, newDescription, newPaymentType, deleted, companyId);
                    }

                    // Delete vacation day
                    if ((row.Deleted) && (row.InDatabase))
                    {
                        VacationDays vacationDays = new VacationDays(null);
                        vacationDays.DeleteDirect(row.VacationID);
                    }
                }
            }
        }