private void grdStatuses_ReadControls(TRptCalculator ACalc, TReportActionEnum AReportAction) { String DocumentTypeList = ""; foreach (DataRow Row in FCommitmentStatusTable.Rows) { if ((Row["Selection"].GetType() == Type.GetType("System.Boolean")) && ((bool)Row["Selection"])) { DocumentTypeList = DocumentTypeList + (String)Row[PmCommitmentStatusTable.GetCodeDBName()] + ','; } } if (DocumentTypeList.Length > 0) { // Remove the last comma DocumentTypeList = DocumentTypeList.Remove(DocumentTypeList.Length - 1, 1); ACalc.AddParameter("param_commitmentstatuses", DocumentTypeList); } else if ((AReportAction == TReportActionEnum.raGenerate) && (chkSelectedStatus.Checked) && (!chkNoSelectedStatus.Checked)) { // at least one commitment status must be checked TVerificationResult VerificationResult = new TVerificationResult("Select at least one commitment status.", "No commitment status selected!", TResultSeverity.Resv_Critical); FPetraUtilsObject.AddVerificationResult(VerificationResult); } }
private void grdCommitmentStatusChoices_ReadControls(TRptCalculator ACalc, TReportActionEnum AReportAction) { // TODO // The reason that the status choices listbox is not // filled in with saved data is that Parameter.Save() // and Parameter.Load() do not use // TVariant.EncodeToString() and // TVariant.DecodeFromString() when storing a saved set // of parameters. Composites survive fine over the // remoting interface, though. I (binki) am allowed to // change the behavior of TParameterList.Save() and // TParameterList.Load() _if_ I change the // XmlReports/Settings/.../standard.xml files to support // DecodeFromString(). TVariant param_grdCommitmentStatusChoices = new TVariant(); foreach (DataRow ARow in FCommitmentStatusTable.Rows) { if ((bool)ARow["Selection"]) { param_grdCommitmentStatusChoices.Add(new TVariant((String)ARow[PmCommitmentStatusTable.GetCodeDBName()]), "", false); } } ACalc.AddParameter("param_commitment_status_choices", param_grdCommitmentStatusChoices); }
private void grdStatuses_SetControls(TParameterList AParameters) { String SelectedStatuses = AParameters.Get("param_commitmentstatuses").ToString(); foreach (DataRow Row in FCommitmentStatusTable.Rows) { String CurrentStatus = (String)Row[PmCommitmentStatusTable.GetCodeDBName()]; Row["Selection"] = SelectedStatuses.Contains(CurrentStatus); } }
private void grdCommitmentStatusChoices_SetControls(TParameterList AParameters) { HashSet <String> AValues = new HashSet <String>(); foreach (TVariant choice in AParameters.Get("param_commitment_status_choices").ToComposite()) { AValues.Add(choice.ToString()); } foreach (DataRow ARow in FCommitmentStatusTable.Rows) { ARow["Selection"] = AValues.Contains((String)ARow[PmCommitmentStatusTable.GetCodeDBName()]); } }
private void grdStatuses_InitialiseData(TFrmPetraReportingUtils APetraUtilsObject) { // Get list of commitment statuses FCommitmentStatusTable = TDataCache.TMPersonnel.GetCacheablePersonnelTable( TCacheablePersonTablesEnum.CommitmentStatusList); FCommitmentStatusTable.Columns.Add("Selection", System.Type.GetType("System.Boolean")); grdStatuses.Columns.Clear(); grdStatuses.AddCheckBoxColumn("", FCommitmentStatusTable.Columns["Selection"]); grdStatuses.AddTextColumn("Status", FCommitmentStatusTable.Columns[PmCommitmentStatusTable.GetCodeDBName()]); grdStatuses.AddTextColumn("Description", FCommitmentStatusTable.Columns[PmCommitmentStatusTable.GetDescDBName()]); FCommitmentStatusTable.DefaultView.AllowNew = false; FCommitmentStatusTable.DefaultView.AllowDelete = false; grdStatuses.DataSource = new DevAge.ComponentModel.BoundDataView(FCommitmentStatusTable.DefaultView); grdStatuses.AutoSizeCells(); chkSelectedStatusChanged(null, null); }
private void grdCommitmentStatusChoices_InitialiseData(TFrmPetraReportingUtils FPetraUtilsObject) { #region Copied from csharp/ICT/Petra/Client/MReporting/Gui/MPersonnel/StartOfCommitmentReport.ManualCode.cs // TODO // The following block of code should be generalized // along with the similar code from // StartOfCommitmentReport.ManualCode.cs. FCommitmentStatusTable = TDataCache.TMPersonnel.GetCacheablePersonnelTable( TCacheablePersonTablesEnum.CommitmentStatusList); FCommitmentStatusTable.Columns.Add("Selection", System.Type.GetType("System.Boolean")); grdCommitmentStatusChoices.Columns.Clear(); grdCommitmentStatusChoices.AddCheckBoxColumn("", FCommitmentStatusTable.Columns["Selection"], false); grdCommitmentStatusChoices.AddTextColumn("Type", FCommitmentStatusTable.Columns[PmCommitmentStatusTable.GetCodeDBName()]); grdCommitmentStatusChoices.AddTextColumn("Description", FCommitmentStatusTable.Columns[PmCommitmentStatusTable.GetDescDBName()]); FCommitmentStatusTable.DefaultView.AllowNew = false; FCommitmentStatusTable.DefaultView.AllowDelete = false; grdCommitmentStatusChoices.DataSource = new DevAge.ComponentModel.BoundDataView(FCommitmentStatusTable.DefaultView); grdCommitmentStatusChoices.AutoResizeGrid(); #endregion }