Design - Elemente löschen

  • Hallo Leude


    In einer Datenbank habe ich einige geschützte Design- Elemente (Forms, Views, Pages, Framesets etc. mit der Option "Von Gestaltungsschablone übernehmen" ) welche nicht mehr gebraucht werden. Bei einem designrefresh werden diese nicht rausgelöscht.
    Wie kann ich die Design-Elemente (am liebsten alle) aus der DB löschen?!


    Danke und Gruss, Dave

  • dann mach doch ein design replace...
    wenn nicht das häckchen bei gestaltungsaktualisierung verhindern gesetzt ist, sollte die gestaltungselemente, die nicht in der schablone sind gelöscht...

  • Hallo, das ist genau der Zweck des Hakens das sie dann nicht mehr von der Schablone geändert werden.
    Wenn es recht viele sind dann würde ich so vorgehen. Eine leere Schablone drüberziehen dann hast du nur noch diese Elemente die kannst du dann im Designer einfach markieren und löschen. Anschließend die richtige Schabloen drüberziehen->fertig.
    Gruß
    harry

  • Muerte
    Bei einem DesignReplace bleiben die DesignElemente drin


    CodeDino
    Der Haken ist NICHT gesetzt, beim Feld "Von Gestaltungsschablone übernehmen" steht eine Schablone drin!!
    Des mit der leeren Schablone drüberziehen funzt nicht, es schmeisst dann nur die raus, bei denen keine Schablone angegeben ist...und ich will die raus haben, bei denen eben eine drin steht.

  • Nix für ungut, aber in der Zeit, in der hier über eine Lösung diskutiert wird, hättest du die Elemente schon längst manuell rauslöschen können...


    und btw: wenn ich ne leere Schablone per Replace Design über ne DB rüberkippe, dann sind *alle* Elemente raus. So, wie es sich gehört


    greetz
    RW

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • RockWilder....Du bist vielleicht ein wilder!!


    Das Problem ist, dass die Datenbanken Lokal auf den CLients sind und das sind so gegen die 2000 Stück!


    Beim Replace mit einer leeren Schablone werden nur die Elemente rausgekippt, die den Eintrag "Von Gestaltungsschablone übernehmen" nicht drin haben....die mit deisem Eintrag (die die ich raus haben will!!!) bleiben drin.


    Also....wer hat mir einen Ansatz, wie ich das ganze programmiere.


    Die Forms / Views und Agents bringt man ganz easy raus...


    Dim session As New NotesSession
    Dim db As NotesDatabase
    Dim view As NotesView
    Set db = session.CurrentDatabase
    Set view = db.GetView( "ViewName" )
    Call view.Remove


    aber mit dem Rest habe ich Mühe.


    Gruss, dave

  • und diese 2k DBs liegen einfach nur so da rum, und sind keine Repliken vom Server?


    Anyway, wenn du Notes6 hast, dann gibt es eine Möglichkeit:


    Code
    Dim nc As NotesNoteCollection
    Set nc = db.CreateNoteCollection(False)
    Call nc.SelectAllIndexElements(True)
    nc.SelectViews = True


    Durch diese Collection kannst du dann iterieren und abfragen, ob "notesView.ViewInheritedName" != "" ist. Wenn ja, denn halt löschen.


    Wenn du Notes5 hast, dann tut das nicht...


    greetz
    RW

    Life is not a journey to the grave with the intention of arriving safely in a pretty and well-preserved body, but rather to skid in broadside, thoroughly used up, totally worn out, and loudly proclaiming "Wow, what a ride!!! :evil:
    Beschleunigung ist, wenn die Tränen der Ergriffenheit waagrecht zum Ohr hin abfliessen - Walter Röhrl

  • wenn du r5 hast dann such mal was zum thema formulaclass.


    du kannst dir ne ansicht bauen die alle design elemente enthält. diese dann einfach durchgehen und die entsprechenden elemente rauslöschen.

    bunt ist das dasein und granatenstark. volle kanne hoshi's!


    IBM Certified Advanced System Administrator (R5, D6, D7)
    IBM Certified Advanced Application Developer (R5, D6, D7, D8)

  • Hallo


    RockWilder:
    Das tönt schon mal gut.
    Jetzt möchte ich aber nicht nur die Views weg haben sondern alle Design Elemente die einen solchen Inherit haben.
    Wie alle Elemente gelöscht werden, das habe ich rausgefunden...aber wie kann ich nur die löschen, welche einen solchen Inherit haben??


    alle Elemente löschen:


    nc.selectAllDesignElements(False)
    nc.SelectIcon = False
    nc.SelectImageResources = False
    nc.SelectForms = True
    nc.SelectViews = True
    nc.SelectActions = False
    Call nc.BuildCollection


    Gruss, Dave

  • hi,


    also das is die page wo ich mir die infos hergezogen hab:
    http://www.dominopower.com/iss…t/issue199908/design.html


    wichtig is halt das du die ansicht erstellst und nachher den agent drüber laufen lässt.


    -> Call doc.ReplaceItemValue("$FormulaClass", "4") für die 4 solltest du
    2 + 4 + 8 + 16 + 32 + 64 + 128 + 256 + 512 + 1024 + 2048 + 4096 usw. (natürlich als text)
    einsetzen um eben alles ausser die dokumente (die sind ja "1") zu sehen.


    hier ein bischen aus einer quick'n'dirty programmierung von mir:



    und



    hoffe man kann es einigermassen lesen + verstehen.


    mit notes6 gehts glaube etwas eleganter ...

    bunt ist das dasein und granatenstark. volle kanne hoshi's!


    IBM Certified Advanced System Administrator (R5, D6, D7)
    IBM Certified Advanced Application Developer (R5, D6, D7, D8)