Example #1
0
        private void InitializeManualCode()
        {
            // show this dialog in center of screen
            this.StartPosition = FormStartPosition.CenterScreen;

            FTypeTable = (PTypeTable)TDataCache.TMPartner.GetCacheablePartnerTable(
                TCacheablePartnerTablesEnum.PartnerTypeList);

            for (int i = 0; i < FTypeTable.Rows.Count; i++)
            {
                PTypeRow row = (PTypeRow)FTypeTable.Rows[i];

                if (!row.ValidType)
                {
                    row.TypeDescription += MCommonResourcestrings.StrGenericInactiveCode;
                }
            }

            FTypeTable.AcceptChanges();

            grdTypes.AddTextColumn(Catalog.GetString("Type Code"), FTypeTable.Columns[PTypeTable.GetTypeCodeDBName()]);
            grdTypes.AddTextColumn(Catalog.GetString("Description"), FTypeTable.Columns[PTypeTable.GetTypeDescriptionDBName()]);

            DataView myDataView = FTypeTable.DefaultView;

            myDataView.AllowNew = false;
            grdTypes.DataSource = new DevAge.ComponentModel.BoundDataView(myDataView);
        }
        private void PopulateReceivingFieldList()
        {
            string CheckedMember = "CHECKED";
            string DisplayMember = "Field Name";
            string ValueMember   = "Field Key";

            FFieldTable = TRemote.MFinance.Reporting.WebConnectors.GetReceivingFields(FLedgerNumber, out DisplayMember, out ValueMember);

            DataColumn FirstColumn = new DataColumn(CheckedMember, typeof(bool));

            FirstColumn.DefaultValue = false;
            FFieldTable.Columns.Add(FirstColumn);

            clbFields.Columns.Clear();
            clbFields.AddCheckBoxColumn("", FFieldTable.Columns[CheckedMember], 17, false);
            clbFields.AddTextColumn(Catalog.GetString("Field Key"), FFieldTable.Columns[ValueMember], 100);
            clbFields.AddTextColumn(Catalog.GetString("Field Name"), FFieldTable.Columns[DisplayMember], 200);
            clbFields.DataBindGrid(FFieldTable, ValueMember, CheckedMember, ValueMember, false, true, false);

            FTypeTable = TDataCache.TMPartner.GetCacheablePartnerTable(TCacheablePartnerTablesEnum.PartnerTypeList);

            DataColumn CheckedColumn = new DataColumn(CheckedMember, typeof(bool));

            CheckedColumn.DefaultValue = false;

            FTypeTable.Columns.Add(CheckedColumn);
            clbTypes.Columns.Clear();
            clbTypes.AddCheckBoxColumn("", FTypeTable.Columns[CheckedMember], 17);
            clbTypes.AddTextColumn(Catalog.GetString("Partner Type"), FTypeTable.Columns[PTypeTable.GetTypeCodeDBName()], 280);
            clbTypes.DataBindGrid(FTypeTable, PTypeTable.GetTypeCodeDBName(), CheckedMember,
                                  PTypeTable.GetTypeCodeDBName(), false, true, false);
        }
        private void InitializeManualCode()
        {
            string CheckedMember = "CHECKED";
            string DisplayMember = PTypeTable.GetTypeDescriptionDBName();
            string ValueMember   = PTypeTable.GetTypeCodeDBName();

            DataTable Table = TDataCache.TMPartner.GetCacheablePartnerTable(TCacheablePartnerTablesEnum.PartnerTypeList);
            DataView  view  = new DataView(Table);

            // TODO view.RowFilter = only active types?
            view.Sort = ValueMember;

            DataTable NewTable = view.ToTable(true, new string[] { ValueMember, DisplayMember });

            NewTable.Columns.Add(new DataColumn(CheckedMember, typeof(bool)));

            clbIncludeSpecialTypes.SpecialKeys =
                ((SourceGrid.GridSpecialKeys)((((((SourceGrid.GridSpecialKeys.Arrows |
                                                   SourceGrid.GridSpecialKeys.PageDownUp) |
                                                  SourceGrid.GridSpecialKeys.Enter) |
                                                 SourceGrid.GridSpecialKeys.Escape) |
                                                SourceGrid.GridSpecialKeys.Control) | SourceGrid.GridSpecialKeys.Shift)));

            //clbIncludeSpecialTypes.SelectionMode = SourceGrid.GridSelectionMode.Row;
            clbIncludeSpecialTypes.Columns.Clear();
            clbIncludeSpecialTypes.AddCheckBoxColumn("", NewTable.Columns[CheckedMember], 17, false);
            clbIncludeSpecialTypes.AddTextColumn(Catalog.GetString("Type Code"), NewTable.Columns[ValueMember]);
            clbIncludeSpecialTypes.AddTextColumn(Catalog.GetString("Type Description"), NewTable.Columns[DisplayMember]);
            clbIncludeSpecialTypes.DataBindGrid(NewTable, ValueMember, CheckedMember, ValueMember, false, true, false);
        }
Example #4
0
        private void InitializeManualCode()
        {
            // show this dialog in center of screen
            this.StartPosition = FormStartPosition.CenterScreen;

            FTypeTable = (PTypeTable)TDataCache.TMPartner.GetCacheablePartnerTable(
                TCacheablePartnerTablesEnum.PartnerTypeList);
            grdTypes.AddTextColumn(Catalog.GetString("Type Code"), FTypeTable.Columns[PTypeTable.GetTypeCodeDBName()]);
            grdTypes.AddTextColumn(Catalog.GetString("Description"), FTypeTable.Columns[PTypeTable.GetTypeDescriptionDBName()]);

            DataView myDataView = FTypeTable.DefaultView;

            myDataView.AllowNew = false;
            grdTypes.DataSource = new DevAge.ComponentModel.BoundDataView(myDataView);
        }
Example #5
0
        private void grdTypes_InitialiseData(TFrmPetraReportingUtils APetraUtilsObject)
        {
            // Get list of commitment statuses
            FTypesTable = (PTypeTable)TDataCache.TMPartner.GetCacheablePartnerTable(
                TCacheablePartnerTablesEnum.PartnerTypeList);

            grdTypes.Columns.Clear();

            grdTypes.AddTextColumn("Type", FTypesTable.Columns[PTypeTable.GetTypeCodeDBName()]);

            FTypesTable.DefaultView.AllowNew    = false;
            FTypesTable.DefaultView.AllowDelete = false;

            for (int Counter = FTypesTable.Rows.Count - 1; Counter >= 0; --Counter)
            {
                String TypeCode = (String)FTypesTable.Rows[Counter][PTypeTable.GetTypeCodeDBName()];

                // allow ORGANIZATION SPECIFIC TypeCode
                String[] DefaultWorkerTypes =
                    TAppSettingsManager.GetValue("DEFAULTWORKERTYPES_STARTINGWITH", "WORKER;EX-WORKER;ASSOC", false).Split(new char[] { ';' });

                bool typeInList = false;

                foreach (string allowedType in DefaultWorkerTypes)
                {
                    if (TypeCode.StartsWith(allowedType))
                    {
                        typeInList = true;
                    }
                }

                if (!typeInList)
                {
                    FTypesTable.Rows.RemoveAt(Counter);
                }
            }

            grdTypes.DataSource = new DevAge.ComponentModel.BoundDataView(FTypesTable.DefaultView);
            grdTypes.AutoSizeCells();
            grdTypes.Selection.EnableMultiSelection = true;
            SelectTypesChanged(null, null);
            chkAnniversariesCheckedChanged(null, null);
        }
        private void grdTypes_InitialiseData(TFrmPetraReportingUtils APetraUtilsObject)
        {
            // Get list of commitment statuses
            FTypesTable = (PTypeTable)TDataCache.TMPartner.GetCacheablePartnerTable(
                TCacheablePartnerTablesEnum.PartnerTypeList);

            grdTypes.Columns.Clear();

            grdTypes.AddTextColumn("Type", FTypesTable.Columns[PTypeTable.GetTypeCodeDBName()]);

            FTypesTable.DefaultView.AllowNew = false;
            FTypesTable.DefaultView.AllowDelete = false;

            for (int Counter = FTypesTable.Rows.Count - 1; Counter >= 0; --Counter)
            {
                String TypeCode = (String)FTypesTable.Rows[Counter][PTypeTable.GetTypeCodeDBName()];

                // allow ORGANIZATION SPECIFIC TypeCode
                String[] DefaultWorkerTypes =
                    TAppSettingsManager.GetValue("DEFAULTWORKERTYPES_STARTINGWITH", "WORKER;EX-WORKER;ASSOC", false).Split(new char[] { ';' });

                bool typeInList = false;

                foreach (string allowedType in DefaultWorkerTypes)
                {
                    if (TypeCode.StartsWith(allowedType))
                    {
                        typeInList = true;
                    }
                }

                if (!typeInList)
                {
                    FTypesTable.Rows.RemoveAt(Counter);
                }
            }

            grdTypes.DataSource = new DevAge.ComponentModel.BoundDataView(FTypesTable.DefaultView);
            grdTypes.AutoSizeCells();
            grdTypes.Selection.EnableMultiSelection = true;
            SelectTypesChanged(null, null);
            chkAnniversariesCheckedChanged(null, null);
        }
Example #7
0
        public static PTypeTable GetChildrenStatusOptions()
        {
            TDBTransaction t   = new TDBTransaction();
            TDataBase      db  = DBAccess.Connect("FindChildrenStatusOptions");
            string         sql = "SELECT p_type_code_c, p_type_description_c " +
                                 "FROM PUB_p_type " +
                                 "WHERE p_valid_type_l = 1 AND p_category_code_c = 'SPONSORED_CHILD_STATUS'";

            PTypeTable result = new PTypeTable();

            db.ReadTransaction(ref t,
                               delegate
            {
                db.SelectDT(result, sql, t);
            });

            db.CloseDBConnection();

            return(result);
        }
Example #8
0
        /// <summary>
        /// todoComment
        /// </summary>
        public void FillTempPartnerTypesTable()
        {
            DataTable SelectedPartnerTypeTable;
            DataView  SelectedPartnerTypeTableDV;
            DataView  UnselectedPartnerTypeTableDV;
            DataRow   TheNewRow;
            Int16     RowCounter;
            String    TypeDescription;
            Int32     TypeDescriptionInCachePosition;

            // TODO 2 oChristianK cList Sorting : Sort both the checked and not checked List items so that invalid Types are sorted to the end of both lists, respectively.

            FPartnerTypesGridTable.Rows.Clear();
            FPartnerTypesGridTable.AcceptChanges();

            // Sort data
            SelectedPartnerTypeTable        = FMainDS.PPartnerType;
            SelectedPartnerTypeTableDV      = SelectedPartnerTypeTable.DefaultView;
            SelectedPartnerTypeTableDV.Sort = PTypeTable.GetTypeCodeDBName();

            UnselectedPartnerTypeTableDV      = FDataCache_PartnerTypeListTable.DefaultView;
            UnselectedPartnerTypeTableDV.Sort = PTypeTable.GetTypeCodeDBName();

            // first add Special Types which are already selected for partner
            for (RowCounter = 0; RowCounter <= SelectedPartnerTypeTableDV.Count - 1; RowCounter += 1)
            {
                #region Determine Type Description
                TypeDescriptionInCachePosition =
                    FDataCache_PartnerTypeListDV.Find(SelectedPartnerTypeTableDV[RowCounter][PTypeTable.GetTypeCodeDBName()]);

                if (TypeDescriptionInCachePosition != -1)
                {
                    TypeDescription = FDataCache_PartnerTypeListDV[TypeDescriptionInCachePosition][PTypeTable.GetTypeDescriptionDBName()].ToString();

                    // If this Type is inactive, show it.
                    if (!Convert.ToBoolean(FDataCache_PartnerTypeListDV[TypeDescriptionInCachePosition][PTypeTable.GetValidTypeDBName()]))
                    {
                        TypeDescription = TypeDescription + MCommonResourcestrings.StrGenericInactiveCode;
                    }
                }
                else
                {
                    TypeDescription = "";
                }

                #endregion

                TheNewRow                    = FPartnerTypesGridTable.NewRow();
                TheNewRow["Checked"]         = (System.Object)true;
                TheNewRow["TypeCode"]        = SelectedPartnerTypeTableDV[RowCounter][PTypeTable.GetTypeCodeDBName()];
                TheNewRow["TypeDescription"] = TypeDescription;
                FPartnerTypesGridTable.Rows.Add(TheNewRow);
            }

            // second add the rest of the Special Types in db
            for (RowCounter = 0; RowCounter <= UnselectedPartnerTypeTableDV.Count - 1; RowCounter += 1)
            {
                // only add row if it has not already been added as a checked row
                if (SelectedPartnerTypeTableDV.Find(
                        new object[] { UnselectedPartnerTypeTableDV[RowCounter][PTypeTable.GetTypeCodeDBName()] }) == -1)
                {
                    #region Determine Type Description
                    TypeDescription = UnselectedPartnerTypeTableDV[RowCounter][PTypeTable.GetTypeDescriptionDBName()].ToString();

                    // If this Type is inactive, show it.
                    if (!Convert.ToBoolean(UnselectedPartnerTypeTableDV[RowCounter][PTypeTable.GetValidTypeDBName()]))
                    {
                        TypeDescription = TypeDescription + MCommonResourcestrings.StrGenericInactiveCode;
                    }

                    #endregion

                    TheNewRow                    = FPartnerTypesGridTable.NewRow();
                    TheNewRow["Checked"]         = (System.Object)false;
                    TheNewRow["TypeCode"]        = UnselectedPartnerTypeTableDV[RowCounter][PTypeTable.GetTypeCodeDBName()];
                    TheNewRow["TypeDescription"] = TypeDescription;
                    FPartnerTypesGridTable.Rows.Add(TheNewRow);
                }
            }
        }
Example #9
0
 /// <summary>
 /// todoComment
 /// </summary>
 public void LoadTypes()
 {
     FDataCache_PartnerTypeListTable   = (PTypeTable)TDataCache.TMPartner.GetCacheablePartnerTable(TCacheablePartnerTablesEnum.PartnerTypeList);
     FDataCache_PartnerTypeListDV      = FDataCache_PartnerTypeListTable.DefaultView;
     FDataCache_PartnerTypeListDV.Sort = PTypeTable.GetTypeCodeDBName();
 }
Example #10
0
        public static SponsorshipTDS GetChildDetails(Int64 APartnerKey,
                                                     Int32 ALedgerNumber,
                                                     bool AWithPhoto,
                                                     out string ASponsorshipStatus)
        {
            SponsorshipTDS MainDS = new SponsorshipTDS();

            TDBTransaction Transaction = new TDBTransaction();

            DBAccess.ReadTransaction(ref Transaction,
                                     delegate
            {
                PPartnerAccess.LoadByPrimaryKey(MainDS, APartnerKey, Transaction);
                PFamilyAccess.LoadByPrimaryKey(MainDS, APartnerKey, Transaction);
                PTypeAccess.LoadAll(MainDS, Transaction);
                PPartnerTypeAccess.LoadViaPPartner(MainDS, APartnerKey, Transaction);
                PPartnerCommentAccess.LoadViaPPartner(MainDS, APartnerKey, Transaction);
                PPartnerReminderAccess.LoadViaPPartner(MainDS, APartnerKey, Transaction);

                if (!AWithPhoto && (MainDS.PFamily.Rows.Count == 1))
                {
                    MainDS.PFamily[0].Photo = "";
                }

                int SponsorshipBatchNumber = GetRecurringGiftBatchForSponsorship(ALedgerNumber, Transaction);

                if (SponsorshipBatchNumber > -1)
                {
                    ARecurringGiftBatchAccess.LoadByPrimaryKey(MainDS, ALedgerNumber, SponsorshipBatchNumber, Transaction);
                    ARecurringGiftAccess.LoadViaARecurringGiftBatch(MainDS, ALedgerNumber, SponsorshipBatchNumber, Transaction);
                    ARecurringGiftDetailAccess.LoadViaARecurringGiftBatch(MainDS, ALedgerNumber, SponsorshipBatchNumber, Transaction);

                    GiftBatchTDS GiftDS = new GiftBatchTDS();
                    TGiftTransactionWebConnector.LoadGiftDonorRelatedData(GiftDS, true, ALedgerNumber, SponsorshipBatchNumber, Transaction);

                    for (int i = 0; i < MainDS.ARecurringGiftDetail.Count;)
                    {
                        SponsorshipTDSARecurringGiftDetailRow gdr = MainDS.ARecurringGiftDetail[i];
                        // drop all recurring gift details, that are not related to this child (RecipientKey)
                        if (gdr.RecipientKey != APartnerKey)
                        {
                            MainDS.ARecurringGiftDetail.Rows.RemoveAt(i);
                        }
                        else
                        {
                            i++;
                            // set the donor key from the appropriate recurring gift
                            MainDS.ARecurringGift.DefaultView.RowFilter = String.Format("{0} = {1}",
                                                                                        ARecurringGiftTable.GetGiftTransactionNumberDBName(),
                                                                                        gdr.GiftTransactionNumber);

                            // there should be only one row
                            foreach (DataRowView drv in MainDS.ARecurringGift.DefaultView)
                            {
                                ARecurringGiftRow recurrGiftRow = (ARecurringGiftRow)drv.Row;
                                gdr.DonorKey         = recurrGiftRow.DonorKey;
                                PPartnerRow donorRow = (PPartnerRow)GiftDS.DonorPartners.Rows.Find(recurrGiftRow.DonorKey);

                                string DonorAddress, DonorEmailAddress, DonorPhoneNumber;
                                GetDonorContactDetails(recurrGiftRow.DonorKey,
                                                       out DonorAddress, out DonorEmailAddress, out DonorPhoneNumber);
                                gdr.DonorName         = donorRow.PartnerShortName;
                                gdr.DonorAddress      = DonorAddress;
                                gdr.DonorEmailAddress = DonorEmailAddress;
                                gdr.DonorPhoneNumber  = DonorPhoneNumber;
                                gdr.CurrencyCode      = MainDS.ARecurringGiftBatch[0].CurrencyCode;
                            }
                        }
                    }

                    // drop all unrelated gift rows, that don't have a detail for this child
                    for (int i = 0; i < MainDS.ARecurringGift.Count;)
                    {
                        ARecurringGiftRow gr = MainDS.ARecurringGift[0];
                        MainDS.ARecurringGiftDetail.DefaultView.RowFilter = String.Format("{0} = {1}",
                                                                                          ARecurringGiftDetailTable.GetGiftTransactionNumberDBName(),
                                                                                          gr.GiftTransactionNumber);

                        if (MainDS.ARecurringGiftDetail.DefaultView.Count == 0)
                        {
                            MainDS.ARecurringGift.Rows.RemoveAt(i);
                        }
                        else
                        {
                            i++;
                        }
                    }
                }
            });

            bool isSponsoredChild = false;

            ASponsorshipStatus = "[N/A]";

            foreach (PPartnerTypeRow partnertype in MainDS.PPartnerType.Rows)
            {
                MainDS.PType.DefaultView.RowFilter = String.Format("{0} = '{1}'",
                                                                   PTypeTable.GetTypeCodeDBName(),
                                                                   partnertype.TypeCode);

                if (MainDS.PType.DefaultView.Count == 1)
                {
                    PTypeRow type = (PTypeRow)MainDS.PType.DefaultView[0].Row;

                    if (type.CategoryCode == "SPONSORED_CHILD_STATUS")
                    {
                        isSponsoredChild   = true;
                        ASponsorshipStatus = type.TypeCode;
                    }
                }
            }

            if (!isSponsoredChild)
            {
                return(new SponsorshipTDS());
            }

            return(MainDS);
        }
Example #11
0
        private void grdTypes_ReadControls(TRptCalculator ACalc, TReportActionEnum AReportAction)
        {
            //param_partnertypelist
            if (chkSelectTypes.Checked)
            {
                String SelectedTypes = "";

                for (int Counter = 0; Counter < grdTypes.SelectedDataRows.Length; ++Counter)
                {
                    SelectedTypes = SelectedTypes +
                                    (String)((DataRowView)grdTypes.SelectedDataRows[Counter]).Row[FTypesTable.Columns[PTypeTable.GetTypeCodeDBName()]
                                    ] + ",";
                }

                // remove the last ,
                if (SelectedTypes.Length > 0)
                {
                    SelectedTypes = SelectedTypes.Substring(0, SelectedTypes.Length - 1);
                }

                ACalc.AddParameter("param_typecode", SelectedTypes);
            }
            else
            {
                ACalc.AddParameter("param_partnertypelist", "false");
            }

/*                                              // "Include family members" removed because it doesn't work properly
 *          if (chkIncludeFamily.Checked)
 *          {
 *              // Allow sorting of multiple levels
 *              // if the option "Family members" is used, then the report will
 *              // generate a result with multiple levels
 *              ACalc.AddParameter("param_sort_multiple_levels", "true");
 *          }
 */

/*                                              // "Sort" options removed because it doesn't work properly
 *
 *          String SortColumns = ACalc.GetParameters().Get("param_sortby_readable").ToString();
 *
 *          if (SortColumns.Contains("Date of Birth"))
 *          {
 *              // Replace sorting of "Date of Birth" with "Date Of Birth This Year"
 *              String SortingColumns = ACalc.GetParameters().Get("param_sortby_columns").ToString();
 *
 *              StringCollection SortingColumn = StringHelper.StrSplit(SortingColumns, ",");
 *
 *              foreach (String StrColumn in SortingColumn)
 *              {
 *                  int currentColumn = Convert.ToInt32(StrColumn);
 *
 *                  String ColumnName = ACalc.GetParameters().Get("param_calculation", currentColumn, -1, eParameterFit.eExact).ToString();
 *
 *                  if (ColumnName == "Date of Birth")
 *                  {
 *                      ACalc.AddParameter("param_calculation", "Date Of Birth This Year", currentColumn);
 *                      break;
 *                  }
 *              }
 *          }
 */
        }
        private void InitializeManualCode()
        {
            // show this dialog in center of screen
            this.StartPosition = FormStartPosition.CenterScreen;

            FTypeTable = (PTypeTable)TDataCache.TMPartner.GetCacheablePartnerTable(
                TCacheablePartnerTablesEnum.PartnerTypeList);
            grdTypes.AddTextColumn(Catalog.GetString("Type Code"), FTypeTable.Columns[PTypeTable.GetTypeCodeDBName()]);
            grdTypes.AddTextColumn(Catalog.GetString("Description"), FTypeTable.Columns[PTypeTable.GetTypeDescriptionDBName()]);

            DataView myDataView = FTypeTable.DefaultView;
            myDataView.AllowNew = false;
            grdTypes.DataSource = new DevAge.ComponentModel.BoundDataView(myDataView);
        }
Example #13
0
        private void ImportPartnerType(TDBTransaction ATransaction)
        {
            PPartnerTypeRow PartnerTypeRow = FMainDS.PPartnerType.NewRowTyped();

            PartnerTypeRow.PartnerKey = FPartnerKey;

            PartnerTypeRow.TypeCode = ReadString();
            PartnerTypeRow.ValidFrom = ReadNullableDate();
            PartnerTypeRow.ValidUntil = ReadNullableDate();

            if (FTypeTable == null)
            {
                FTypeTable = PTypeAccess.LoadAll(StringHelper.StrSplit(PTypeTable.GetTypeCodeDBName(), ","), ATransaction);
            }

            // ignore types that are not in the database. avoid constraint violation
            if (!FIgnorePartner && (FTypeTable.Rows.Find(PartnerTypeRow.TypeCode) != null))
            {
                PPartnerTypeAccess.AddOrModifyRecord(PartnerTypeRow.PartnerKey,
                    PartnerTypeRow.TypeCode,
                    FMainDS.PPartnerType,
                    PartnerTypeRow,
                    FDoNotOverwrite,
                    ATransaction);
            }
        }
Example #14
0
 /// <summary>
 /// todoComment
 /// </summary>
 public void LoadTypes()
 {
     FDataCache_PartnerTypeListTable = (PTypeTable)TDataCache.TMPartner.GetCacheablePartnerTable(TCacheablePartnerTablesEnum.PartnerTypeList);
     FDataCache_PartnerTypeListDV = FDataCache_PartnerTypeListTable.DefaultView;
     FDataCache_PartnerTypeListDV.Sort = PTypeTable.GetTypeCodeDBName();
 }