Via DvAPI32 Aufgabe erstellen mit VB.NET

  • Hallo, dies ist mein erster Eintrag hier im Forum, also bitte ich um ein wenig Nachsicht.


    Ich möchte ein Programm schreiben, welches im David InfoCenter FX Aufgaben erstellt.


    Soweit habe ich mein Programm auch schon fertig, dass es bei mir im
    Verzeichnis die Aufgabe ablegt, nun möchte ich allerdings Aufgaben für
    andere Benutzer erstellen können. Diese kann ich mittels


    Code
    oArchive = oAccount.ArchiveFromID("\\server\david\archive\user\10000000\in")


    auch umsetzen, aber wie finde ich die ID der entsprechenden Benutzer heraus, damit ich die IDs nicht immer raussuchen muss ?


    Gibt es eine Möglichkeit, dass ich nicht manuell eine Liste pflegen muss ?



    Derzeit sieht mein Code wie folgt aus:


    Falls jemand weiß, wieso ich bei "oTaskItem.Resources" keinen String übergeben kann, immer raus mit der Sprache. :)


    Ich bin über jeden Hinweis sehr dankbar.


    Gruß

  • Hallo und Willkommen im Forum,


    bis auf den fehlenden Vornamen hast Du doch alles wunderbar und sauber gemacht. ;)


    Hast Du mal versucht an die Resources Eigenschaft eine Stringvariable zu übergeben die Du vorher entsprechend initialisiert hast? Keine Ahnung ob das was bringt, nur so eine Idee.


    Wegen der User-IDs folgendes:
    Das Accountobjekt hält eine Methode get_LocalAddressBook bereit, mit der man alle Benutzer die im David angelegt auflisten kann.
    Ich weiß gerade nicht mehr was dabei alles zurück gegeben wird, aber im Zweifelsfall kann man da noch mit dem User-Objekt weiter arbeiten.


    Noch ein kleiner Hinweis zu den User-IDs in der API. Oft wird diese als Dezimalzahl dargestellt, die muss man also erst konvertieren. Also nicht wundern wenn dort z.b. für den Admin statt der 10004000 die 268451840 steht.
    Das kann man händisch übrigens wunderbar mit dem Windows Taschenrechner nachvollziehen wenn man diesen auf die "Programmierer" Ansicht umschaltet. Einfach HEX Wert eingeben und dann den Button auf DEZ stellen.


    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

  • Hallo Teardrop,


    vielen Dank für die Hilfe. LocalAdressBook hat mir sehr weiter geholfen. Habe dies in der DvAPI Hilfe eingetippt und gemerkt, ich hatte den Code die ganze Zeit schon vor der Nase. Nungut, mein Code sieht nun in etwa so aus:


    Falls der Benutzer dann die Rechte auf den Ordner des anderen hat, dann wird die Aufgabe auch erstellt.
    Nun bleibt aber weiterhin für mich das Problem mit einigen Werten, die ich nicht setzen kann, wie z.B.:

    Code
    oTaskItem.ActualWork = 10 'Integer
    oTaskItem.TotalWork = 20 'Integer
    oTaskItem.Resources = "Ressourcen" 'String
    oTaskItem.Companies = "Firmen" 'String
    oTaskItem.DateCompleted = "10.10.2012 10:00:00" 'Object


    Kann man diese Werte bei der Erstellung vielleicht gar nicht mit übergeben sondern nur nachträglich eintragen ?
    Wober ich mir nicht mehr sicher bin, ob ich es irgendwann mal geschafft haben den ein oder anderen Wert zu setzen. Es kam mir so vor als hätte ich die Firma mal eingetragen bekommen. Irgendwie komisch.


    In der Hilfe gibt es Beispielcode, wo diese Werte gesetzt werden.


    Hat vielleicht jemand noch einen Tipp für mich ?


    Danke und Gruß
    Sascha

  • Ich habe nun noch mal den Test gemacht, ob ich die Werte im nachhinein ändern kann. Leider hat das auch nicht geklappt. Aber beim auslesen habe ich herausbekommen, dass die Werde für die Zeit in Minuten gespeichert werden.


    Ich warte dann mal, vielleicht hat ja jemand die zündende Idee für mich. :)


    Gruß Sascha

  • Hallo Sascha,


    hast Du mal versucht wie oben erwähnt, die Werte als Variable zu setzen und nicht direkt als Werte?


    Also z.B. sowas:



    Code
    Dim res as String = "Test"
    oTaskItem.Resources = res


    Bekommst Du eine Fehlermeldung? Wenn ja, welche?


    Ich habe selbst noch nichts mit Aufgaben gemacht ausser vor Ewigkeiten mal ein paar Tests, und das auch nur in C#. Daher kann ich Dir darauf keine eindeutige Antwort geben. Prinzipiell denke ich aber schon dass es funktioniert.


    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

  • Hallo Jens,




    das habe ich auch schon versucht, jedoch ohne Erfolg. Ich finde es halt
    komisch, weil die Werte, die nicht funktionieren alle auf der zweiten
    Seite sind, wenn man manuell eine Aufgabe erstellt. Beim Auslesen meiner
    Aufgaben habe ich es mal debuggt und konnte mir alle Werte anschauen
    von einem manuell angelegten Testeintrag. Habe sie dann versucht zu
    ändern, was aber auch nicht funktioniert hat. Vermutlich muss ich
    irgendwas beachten. Vielleicht beim Speichern, aber ich komme einfach
    nicht dahinter.


    Falls ich es mal schaffe, melde ich mich dann noch mal. :)


    Gruß Sascha

  • Hallo Zusammen,


    ich habe gerade Hilfe gefunden und konnte das Problem nun beheben.


    Ich sollte einfach bevor ich die Werte übergebe, lesend auf den Wert zugreifen.


    Code
    a = oTaskItem.ActualWork
    oTaskItem.ActualWork = 120
    oTaskItem.Resources = "Ressourcen"
    oTaskItem.TotalWork = 600
    oTaskItem.Companies = "Firma"


    Somit kann ich mein Projekt nun abschließen.
    Vielen Dank noch mal.


    Gruß Sascha

  • Hallo Sascha,


    danke für die Rückmeldung!


    Jetzt wo Du es schreibst - hab ich auf jeden Fall auch schonmal von gehört oder gelesen, hatte ich aber absolut nicht mehr auf dem Schirm.


    Gut das es funktioniert und die "Nachwelt" nun auch schlauer sein wird. :)


    Gruß Jens

    Es wäre schön, Deinen Vornamen zu kennen. Bitte beachte unsere Forenregeln und die Netiquette.

    ----------

    Bitte teilen/weitersagen: STARFACE Module Databasewww.sfm-db.com


    STARFACE Excellence PartnerSTARFACE Module CreatorTobit.Software Authorized Partner (Mailserver/Unified Messaging)work4all! Solution Partner (CRM/ERP)Securepoint Professional Partner (Firewall/UTM)


    1 Qubit - J.Suingwww.1qubit.deSoftware - Service - Coding

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!