public void CreateNewTextRow(int gsftObjDtlId, ScopeArchivGeschaeftsObjektKlasse gsftObjKls, ScopeArchivDatenElementId elementId,
                                     ScopeArchivDatenElementTyp elementTyp, string text,
                                     int sequence)
        {
            var newRow = CreateBasicRow(gsftObjDtlId, gsftObjKls, elementId, elementTyp, sequence);

            newRow.MEMO_TXT = text;
            detailDataSet.DetailData.AddDetailDataRow(newRow);
        }
        public void CreateNewDateRangeRow(int gsftObjDtlId, ScopeArchivGeschaeftsObjektKlasse gsftObjKls, ScopeArchivDatenElementId elementId,
                                          ScopeArchivDatenElementTyp elementTyp, ScopeArchivDateOperator dateOperator, string bgnDtStnd, string endDtStnd, DateTime bgnDt,
                                          DateTime endDt, bool bgnApprox, bool endApprox,
                                          int sequence)
        {
            var newRow = CreateBasicRow(gsftObjDtlId, gsftObjKls, elementId, elementTyp, sequence);

            newRow.BGN_DT_STND   = bgnDtStnd;
            newRow.END_DT_STND   = endDtStnd;
            newRow.BGN_DT        = bgnDt;
            newRow.END_DT        = endDt;
            newRow.BGN_CIRCA_IND = bgnApprox ? 1 : 0;
            newRow.END_CIRCA_IND = endApprox ? 1 : 0;
            newRow.DT_OPRTR_ID   = (int)dateOperator;
            detailDataSet.DetailData.AddDetailDataRow(newRow);
        }
        private DetailDataDataSet.DetailDataRow CreateBasicRow(int gsftObjDtlId, ScopeArchivGeschaeftsObjektKlasse gsftObjKls,
                                                               ScopeArchivDatenElementId elementId,
                                                               ScopeArchivDatenElementTyp elementTyp, int sequence)
        {
            var newRow = detailDataSet.DetailData.NewDetailDataRow();

            newRow.GSFT_OBJ_DTL_ID     = gsftObjDtlId;
            newRow.GSFT_OBJ_KLS_ID     = (int)gsftObjKls;
            newRow.DATEN_ELMNT_ID      = (int)elementId;
            newRow.DATEN_ELMNT_TYP_ID  = (int)elementTyp;
            newRow.GSFT_OBJ_ID         = 1000;
            newRow.ELMNT_SQNZ_NR       = sequence;
            newRow.VOLL_TXT_SRCHBL_IND = 1;
            newRow.ZGRF_BRTG_STUFE_ID  = (int)DataElementVisibility.@public;
            newRow.TITEL = Enum.GetName(typeof(ScopeArchivDatenElementId), elementId);
            return(newRow);
        }
        public static DataElementElementType MapDataElementType(ScopeArchivDatenElementTyp datenElementTyp)
        {
            switch (datenElementTyp)
            {
            case ScopeArchivDatenElementTyp.DateiVerknuepfung:
                return(DataElementElementType.fileLink);

            case ScopeArchivDatenElementTyp.Datumsbereich:
                return(DataElementElementType.dateRange);

            case ScopeArchivDatenElementTyp.EinzeldatumPraezis:
                return(DataElementElementType.datePrecise);

            case ScopeArchivDatenElementTyp.FestkommaZahl:
                return(DataElementElementType.@float);

            case ScopeArchivDatenElementTyp.GanzeZahl:
                return(DataElementElementType.integer);

            case ScopeArchivDatenElementTyp.JaNein:
                return(DataElementElementType.boolean);

            case ScopeArchivDatenElementTyp.Text:
                return(DataElementElementType.text);

            case ScopeArchivDatenElementTyp.Memo:
                return(DataElementElementType.memo);

            case ScopeArchivDatenElementTyp.Uhrzeit:
                return(DataElementElementType.time);

            case ScopeArchivDatenElementTyp.WebHyperlink:
                return(DataElementElementType.hyperlink);

            case ScopeArchivDatenElementTyp.Zwischentitel:
                return(DataElementElementType.header);

            case ScopeArchivDatenElementTyp.Auswahlliste:
                return(DataElementElementType.selection);

            case ScopeArchivDatenElementTyp.Zugänge:
                return(DataElementElementType.accrual);

            case ScopeArchivDatenElementTyp.Einzeldatum:
                return(DataElementElementType.date);

            case ScopeArchivDatenElementTyp.Bild:
                return(DataElementElementType.image);

            case ScopeArchivDatenElementTyp.MailLink:
                return(DataElementElementType.mailLink);

            case ScopeArchivDatenElementTyp.Verknüpfung:
                return(DataElementElementType.entityLink);

            case ScopeArchivDatenElementTyp.Spieldauer:
                return(DataElementElementType.timespan);

            case ScopeArchivDatenElementTyp.AudioVideo:
                return(DataElementElementType.media);

            default:
                throw new ArgumentOutOfRangeException(nameof(datenElementTyp), datenElementTyp, null);
            }
        }