Private Function Dokument_Erstellen()
If Param.DebugMode Then
DivFnkt.InsertJournale("EDKB12: Start Dokument_Erstellen", clsDivFnkt.Enum_InfoTyp.Information)
End If
Try
Dok.cpMainConnectionProvider = Globals.conn
Dokumentid = Globals.DivFnkt.Generate_Key
Dok.sDokumentid = New SqlString(CType(Dokumentid, String))
'***************************************************************************************************************3
'Defaultwerte für das Dokument
'***************************************************************************************************************3
Dok.bAktiv = New SqlBoolean(True)
Dok.bAmsdokument = New SqlBoolean(CType(False, Boolean))
Dok.bAuserstuebernahme = New SqlBoolean(CType(False, Boolean))
Dok.bAusgangsarchiviert = New SqlBoolean(CType(False, Boolean))
Dok.iStatus_edoka_batch_ausgang = Nothing
Dok.daTermin = New SqlDateTime(CType("01.01.1900", DateTime))
Dok.bBereit_zur_archivierung = New SqlBoolean(CType(True, Boolean))
Dok.bEingangsarchiviert = New SqlBoolean(CType(False, Boolean))
Dok.bGesperrt = New SqlBoolean(CType(False, Boolean))
Dok.bUnvollstaendig = New SqlBoolean(CType(False, Boolean))
Dok.iBck = New SqlInt32(CType(1, Int32))
Dok.iColdstatus = New SqlInt32(CType(0, Int32))
Dok.iUnterschriftlinks = New SqlInt32(CType(Unterschriftlinks, Int32))
Dok.iUnterschriftrechts = New SqlInt32(CType(Unterschriftrechts, Int32))
Dok.iVerantwortlich = New SqlInt32(CType(Mitarbeiter.iMitarbeiternr.Value, Int32))
Dok.bVertraulich = New SqlBoolean(CType(False, Boolean))
Dok.sZustelladresse = New SqlString(CType("", String))
Dok.sAnredezustelladresse = New SqlString(CType("", String))
Dok.iZustaendiger = New SqlInt32(CType(Mitarbeiter.iMitarbeiternr.Value, Int32))
Dok.iPostzustellung = New SqlInt32(CType(0, Int32))
Dok.bZustaendig_kube = New SqlBoolean(CType(0, Boolean))
Dok.iMa_ausgangsarchivierung = New SqlInt32(CType(0, Int32))
Dok.iMa_eingangsarchivierung = New SqlInt32(CType(0, Int32))
Dok.sBemerkung = New SqlString(CType("", String))
Dok.sColddokumentid = New SqlString(CType("", String))
Dok.iDokdurchkubeweitergegeben = New SqlInt32(CType(0, Int32))
Dok.sBedRDokumentid = New SqlString(CType("", String))
Dok.bBldossier = New SqlBoolean(CType(False, Boolean))
'***************************************************************************************************************3
'Werte aus Dokumenttyp
'***************************************************************************************************************3
Dok.iDokumenttypnr = New SqlInt32(CType(DokType.iDokumenttypnr.Value, Int32))
Dok.bZu_retournieren = New SqlBoolean(CType(DokType.bZu_retournieren.Value, Boolean))
Dok.iAufbewahrung_elektronisch = New SqlInt32(CType(DokType.iAufbewahrungsfrist_elektronisch.Value, Int32))
Dok.iAufbewahrung_phaysisch = New SqlInt32(CType(DokType.iAufbewahrungsfrist_physisch.Value, Int32))
Dok.iBearbeitung_nach_abschluss = New SqlInt32(CType(DokType.iTage_mutation.Value, Int32))
Dok.iBearbeitungszeit_in_minuten = New SqlInt32(CType(DokType.iDbearbeitungszeit.Value, Int32))
Dok.iMonierung_in_tagen = New SqlInt32(CType(DokType.iAnzahl_tage.Value, Int32))
Dok.sBezeichnung = New SqlString(CType(DokType.sBezeichnung.Value, String))
'***************************************************************************************************************3
'Werte aus der Schnittstelle bzw. Defaultwerte
'***************************************************************************************************************3
Dok.iNrpar00 = New SqlInt32(CType(Partner.iNRPAR00.Value, Int32))
Dok.daArchivierungsdatum = New SqlDateTime(CType(Now, DateTime))
'Ersteller und Mutierer
Dok.iErsteller = New SqlInt32(CType(Mitarbeiter.iMitarbeiternr.Value, Int32))
Dok.iMutierer = Dok.iErsteller
Dok.iMitarbeiternr = Dok.iErsteller
'Erstellungs- und Mutationsdatum
Dok.daMutiertam = New SqlDateTime(CType(Now, DateTime))
Dok.daErstelltam = New SqlDateTime(CType(Now, DateTime))
Dok.iMutierertieam = New SqlInt32(CType(Teamnr, Int32))
Dok.iErstellerteam = New SqlInt32(CType(Teamnr, Int32))
Dok.daErstellungsdatum = New SqlDateTime(CType(Dok.daArchivierungsdatum.Value, DateTime))
Dok.sDokumentname = New SqlString(CType(OfficeVorlage.sPrefix_dokumentname.Value + Dokumentid + FileExtension, String))
Dok.iAnzeigeStatus = New SqlInt32(CType(0, Int32))
conn.OpenConnection()
Dok.Insert()
conn.CloseConnection(True)
Dim t As System.Data.DataTable
Try
t = Cold_Werte(Dok.iDokumenttypnr.Value)
Dok.sColdfolder = New SqlString(CType(t.Rows(0).Item(0), String))
Dok.sColdschema = New SqlString(CType(t.Rows(0).Item(1), String))
Globals.conn.OpenConnection()
Dok.Update()
Globals.conn.CloseConnection(True)
Catch
End Try
'FANummerin im EDOKA-Dokumentaktualisieren
Update_FANummer(tmpAction.GetParameterByName("fanummer3").Value)
Dok.SelectOne()
'Cold_index erstellen
COLD_Index_Sichern(1, Dokumentid)
If Dok.bZu_retournieren.Value = True Then
COLD_Index_Sichern(2, Dokumentid)
End If
'VVNummer im COLDIndex aktualisieren, sofern als Indexwert übergeben
Dok.iStatusnr = New SqlInt32(CType(Dokumentstatus_erstellen_und_Status_Setzen(Dokumentid, True, 0), Int32))
'Dokumentstatus erstelln und Statushistory_eintragen
'dok.iStatusnr = New SqlInt32(CType(Dokumentstatus_erstellen_und_Status_Setzen(datarow, True), Int32))
'Dokument auf der Datenbank speichern
'Abhängig vom entsprechenden Status, wird das Flag, bereit zur Ausgangsarchivierung wieder entfernt
Globals.conn.OpenConnection()
Dok.Update()
Globals.conn.CloseConnection(True)
If Param.DebugMode Then
DivFnkt.InsertJournale("EDKB12: Ende Dokument_Erstellen (True)", clsDivFnkt.Enum_InfoTyp.Information)
End If
Return True
Catch ex As Exception
DivFnkt.InsertJournale("EDKB12::Fehler:: Dokument_Erstellen::" & ex.Message, clsDivFnkt.Enum_InfoTyp.Fehler)
If Param.DebugMode Then
DivFnkt.InsertJournale("EDKB12: Ende Dokument_Erstellen (False)::" & ex.Message, clsDivFnkt.Enum_InfoTyp.Information)
End If
Return False
End Try
End Function
|