public void UpdateCADocumentTransaction(Guid txID, CADocument caDocument)
        {
            Spring.Validation.ValidationErrors errors = new Spring.Validation.ValidationErrors();

            CADocumentDataSet caDocumentDS = (CADocumentDataSet)TransactionService.GetDS(txID);

            CADocumentDataSet.CADocumentRow caDocumentRow = caDocumentDS.CADocument.FindByCADocumentID(caDocument.CADocumentID);

            caDocumentRow.BeginEdit();

            caDocumentRow.DocumentID = caDocument.DocumentID.DocumentID;

            //if (mpaDocument.StartDate < DateTime.Today)
            //{
            //    errors.AddError("Provider.Error", new Spring.Validation.ErrorMessage("StartDateMoreOrEqualToDay"));
            //}

            if (caDocument.StartDate > caDocument.EndDate)
            {
                errors.AddError("Provider.Error", new Spring.Validation.ErrorMessage("StartDateLessOrEqualEndDate"));
            }

            if (caDocument.StartDate.Equals(DateTime.MinValue))
            {
                errors.AddError("Provider.Error", new Spring.Validation.ErrorMessage("StartDateIsRequired"));
            }
            else
            {
                caDocumentRow.StartDate = caDocument.StartDate;
            }

            if (caDocument.EndDate.Equals(DateTime.MinValue))
            {
                errors.AddError("Provider.Error", new Spring.Validation.ErrorMessage("EndDateIsRequired"));
            }
            else
            {
                caDocumentRow.EndDate = caDocument.EndDate;
            }

            if (!errors.IsEmpty)
            {
                throw new ServiceValidationException(errors);
            }

            caDocumentRow.IsTemporary  = caDocument.IsTemporary;
            caDocumentRow.CarLicenseNo = caDocument.CarLicenseNo;
            caDocumentRow.Brand        = caDocument.Brand;
            caDocumentRow.Model        = caDocument.Model;
            if (caDocument.IsWorkArea.HasValue)
            {
                caDocumentRow.IsWorkArea = caDocument.IsWorkArea.Value;
            }
            caDocumentRow.Remark    = caDocument.Remark;
            caDocumentRow.CarType   = caDocument.CarType;
            caDocumentRow.OwnerType = caDocument.OwnerType;
            caDocumentRow.Active    = caDocument.Active;
            caDocumentRow.CreBy     = UserAccount.UserID;
            caDocumentRow.CreDate   = DateTime.Now;
            caDocumentRow.UpdBy     = UserAccount.UserID;
            caDocumentRow.UpdDate   = DateTime.Now;
            caDocumentRow.UpdPgm    = UserAccount.CurrentProgramCode;

            caDocumentRow.EndEdit();
        }