Autor Thema: Anwender können Dokument nicht abspeichern, sondern erzeugen ein Konfliktdokumen  (Gelesen 7043 mal)

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -

ich habe folgendes Problem:

in einer Webanwendung werden die Attachments in Extradokumenten gespeichert. Auf diese Dokumente gibt es einen Link, es öffnet sich ein neues Fenster und dort gibt es Links:  Öffnen des Attachments  und attachment delete.
Durch Attachment delete wird ein Agent angestossen, der das Dokument labelt für den nächtlichen Löschagenten, und ein feld umsetzen soll, so dass das Attachmentdokument nicht mehr im Hauptdokument angezeigt wird.
Mein Problem: ich selbst kann die Aktion noch ausführen, ich habe Managerrechte auf der Datenbank. Beim ordinären Anwender wird allerdings immer ein Konfliktdokument erstellt, und das Hauptdokument wird nicht verändert, das heisst es wird auch weiterhin unverändert angezeigt. Die Anwender haben alle Editorenrechte + die Rolle ihrer zugehörigen Abteilung. Für das Setzen des Löschlabels sind keine Rollen erforderlich. Auf der Maske für die Attachments sind keine Autorenfelder vorhanden, und wenn, sollten sie keine Auswirkung haben, da ja eh alle Editoren sind. Es ist 'merge conflicts'  in der Maske für Behandlung von Konflikten angegeben.
Mir ist absolut unklar, wodurch die Konfliktdokumente erzeugt werden.
Da diese bei mir nicht auftreten, muss es ja in irgendeiner Form mit den Zugriffsrechten zu tun haben.
Wo kann ich noch suchen?  :-:
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Xanthi, jetzt bräuchten wir Code. Irgendwas läuft schief, aber was ... Das ist bisher schwer zu sagen.

Bernhard

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Bernhard, ich habe gerade Verstopfung, aber ich stelle den Code dann morgen früh rein.
Ich suche heute abend dann erstmal im Wein nach der Erleuchtung.
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Hi,

muss ich auchnoch etwas Senf dazu geben....
An "Autorenrechten" kann es eigentlich nicht liegen, da du sagst, dass alle Anwender Editor sind, und die nicht für >=Editoren gelten.

ABER: die ACL könnte so eingestellt sein, dass Maximaler-Internetzugriff "Autor" ist, dann müsste es aber auch bei Dir knallen, ausser Du hast wieder eine Autorenrolle.

Und die Geschrichte mit "Konflikte Mischen" ist ja erstmal nur für Replikations-Konflikte...

Ich würde so ins blauer mal auf irgend einen "doppelten-Save" tippen!

Grüsse und lass Dirs munden!
- ich hoff Du bereust das Tröpfchen nicht am nächsten Tag,
Pete(r)

PS: hui hier tippts sichs viel leicher als mit dem VI ... bin wohl grad etwas ungelenk....
pete(r)

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Moin, moin!

Maximaler Internetzugriff ist auf¨'Editor' eingestellt.

Der Agent, der  angestossen wird im WebQueryclose:

Sub Initialize
   ' Instantiate a new Log and open it
   Set currentLog = New NotesLog( "ag_wqs_attachment" )   
   Call currentLog.OpenNotesLog( db.Server, db_log )
   hilog "ag_wqs_attachment"
'   dbg " hier "
   
   If doc.ptAction(0)="SAVEANDEXIT" Then
      Dim qry As String
      Dim subqry As String
      qry=doc.Query_string(0)' Returns the part beginning with '?OpenAgent'
      subqry=Mid(qry,16) 'Returns the part after ?OpenAgent&
      Dim oid As String
      oid=Left(subqry, 32)
   '   dbg "oid: " & oid   
      Dim fn As String
      fn=Mid(subqry, 33)
   '   dbg fn
      doc.section=fn
   '   dbg " hinter section "
      
      Dim var1 As Variant
      var1 =(Evaluate(|@Attachmentnames|,doc))
      Forall x In var1
         dbg " x = " & x
      End Forall
      
      doc.attachmentfilename=Implode(Evaluate(|@Attachmentnames|,doc))
      'doc.attachmentfilename=(Evaluate(|@Attachmentnames|,doc))
      dbg " attachment " & doc.attachmentfilename(0)
      doc.originalsDoc_id=oid
   '   dbg doc.originalsDoc_id(0)
      doc.doc_id=doc.universalid
   '   dbg doc.doc_id(0)
   Else
      dbg " hier im löschen"      
      doc.workcopyowner="nemo"
      dbg " doc.workcopyowner= nemo"
      doc.originalsDoc_id="nemo"
      doc.section="nemo"
      
   End If
   Call doc.save(False,False)
   
   dbg "["+homeurl+"/fm_closewindow?OpenForm]"
   Print "["+homeurl+"/fm_closewindow?OpenForm]"
   byelog "ag_wqs_attachment"
End Sub


Auf der Maske selbst für Deletedoc:

<script language="JavaScript">
function saveAndExit(){
document.getElementById('ptaction').value='SAVEANDEXIT'
var fn=''(Feld);
var oldDiv=opener.document.getElementById('att_'+fn).innerHTML;
var appendVal="<img src='"+"(Feld)"+"'>"+"(FEld)"+"<br>";
opener.document.getElementById('att_'+fn).innerHTML=oldDiv+appendVal;
document.forms[0].submit();
//window.close();
}
;
function deleteDoc()
{
var fn=''(Feld);
var oldDiv=opener.document.getElementById('att_'+fn).innerHTML;
var appendVal="<img src='"+"Feld"+"'>"+"Feld"+"<br>";
opener.document.getElementById('att_'+fn).innerHTML=oldDiv+appendVal;
document.getElementById('ptaction').value='DELETE'
document.forms[0].submit();
//window.close();

}
</script>

Im Hauptdokument werden die Attachmentdokumente folgendermassen über ein FEld mit Durchgangs-HTML angezeigt.
REM {VARIABLEN};

_Klammer:=icon_def_link+"klammer.gif";
_fn:=@RightBack(@ThisName;4);

REM {BUTTON NEUE ATTACHMENTS};
_html:="<button onclick=\"newAttachment('"+_fn+"','"+OriginalsDoc_ID+"')\">New attachment</button>";



REM {LINKLISTE ZU VORHANDENEN ATTACHMENTS};

_html:=_html+"<div id='ATT_"+_fn+"'>";
_LinkListe:=@DbLookup("Notes":"NoCache";"";"Attachments";OriginalsDoc_ID+_fn;4);
_OrgIDListe:=@DbLookup("Notes":"NoCache";"";"Attachments";OriginalsDoc_ID+_fn;2);
_FNListe:=@DbLookup("Notes":"NoCache";"";"Attachments";OriginalsDoc_ID+_fn;3);
_IDListe:=@DbLookup("Notes":"NoCache";"";"Attachments";OriginalsDoc_ID+_fn;5);


@For(i:=1;i<=@Elements(_LinkListe);i:=i+1;
_tmpAttName:=@Subset(@Subset(_LinkListe;i);-1);
_tmpOID:=@Subset(@Subset(_OrgIDListe;i);-1);
_tmpFN:=@Subset(@Subset(_FNListe;i);-1);
_tmpID:=@Subset(@Subset(_IDListe;i);-1);

_link:=homelink+"/ag_eda?OpenAgent&"+_tmpID;
_html:=_html+"<a href='"+_link+"' target='_blank'><img src='"+_Klammer+"'>"+_tmpAttName+"</a><br>"

);
_html:=_html+"</div>";


REM {AUSGABE};
_html


DAs Call doc.save(flase,false9 hatte ich schon mal rausgenommen, aber mit demselben Ergebnis.
Wenn ich mich einlogge, werden die Felder umgesetzt, benutze ich einen der Testuser, entsteht ein Konfliktdokument.
èber dbg kann ich mir werte ausgeben lassen.
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline flaite

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 2.966
    • mein del.icio.us
Ziemlich schwierig da durchzublicken.

Ich würd versuchen an verschiedenen Stellen log-Statements einzubauen. 
Auf Lotus Notes Seite würd ich mir mal die Klasse NotesLog anschauen.  In der Hilfe wird die Verwendung erklärt.
Viele Consultings oder Nutzer haben auch selbstgeschriebene Log Datenbank-Umgebungen.
Auf openNTF.org  gibts auch was.
Es lohnt sich auf jeden Fall eine eigene Log-Strategie zusammenzupuzzeln.

Für JavaScript benutze ich diese sehr einfache Lösung.
Code
var logging = true; 

/*
* log function -> uses console of firebug or window.status
*/
function doLog(val) {
     if (!logging) return true;  
     try {
	
		console.log(val)
	} catch (e) {
		window.status = val;
	}	
}
Mit installierten Firebug plug-in in Firefox loggt der auf die Firebug Konsole (F-12, wenn firebug installiert ist).
Hier gibts Firebug: https://addons.mozilla.org/de/firefox/addon/1843
In IE schreibt der in die Statuszeile.

Gruß Axel
Ich stimm nicht mit allen überein, aber mit vielen und sowieso unterhaltsam -> https://www.youtube.com/channel/UCr9qCdqXLm2SU0BIs6d_68Q

---

Aquí no se respeta ni la ley de la selva.
(Hier respektiert man nicht einmal das Gesetz des Dschungels)

Nicanor Parra, San Fabian, Región del Bio Bio, República de Chile

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Hi, Axel!

Über dbg kann ich (FAST) alles mitloggen, daher weiss ich auch, dass die übergebenen Werte richtig sind.

Ich verwende Internet Explorer 6.0. Firefox wurde mir schon mehrfach empfohlen, kann ich aber nicht installieren. den firebug lite sehe ich mir an, wenn ich mal 5 Mnuten Luft habe.

grüsse

dau-in
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Hi,

Tritt der Fehler eigentlich schon immer auf oder erst seit kurzem?
(z.B. Migrationshintergrund....)

ich denke Du meinst, dass der Agent im WebQuerySave angestossen wird? oder stehe ich hier auf dem Schlauch...

Hast du schonmal nachgesehen ob in der Maske "SaveOptions" gesetzt wird?
(ist eventuell rausgeflogen oder macht Fehler)

Und hast kannst Du bitte auch den Teil, wie Du im "initialize" zum doc kommst posten.
(müsste ja doc = s.DocumentContext sein)

Grüsse, Pete(r)

pete(r)

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
hi,

ja ich meinte WebQuerySave.
Ich denke, der Fehler war schon immer da, aber jetzt wollte jemand die Funktion benutzen. Ich habe die Applikation nicht selbst geschrieben.
Der Agent bindet eine Scriptlibrary ein, und dort wird im initialize
das doc gesetzt. Das kann ich aber erst am Montag posten, ich bin bereits im Abflug nach Nürnberg(bisehr noch keine Verspätung).
SaveOptions gibt es nicht auf der Maske, das habe ich schon kontrolliert.

grüsse

Dau-in
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline WernerMo

  • @Notes Preisträger
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.050
  • Geschlecht: Männlich
hallo,

von Zürich über Nürnberg nach München?

Ich habe Blickkontakt kann von meinem Büro zum den Tower in Nürnberg sehen, da könnte ich ja fast auf einen Kaffee rauskommen?  :D

Gruß Werner
« Letzte Änderung: 12.10.07 - 15:40:11 von WernerMo »
Gruß Werner
  o                                                  o   
 /@\  Nächster @Notes-Stammtisch  /@\  online Sept. 2020?
_/_\__________________________/_\_ Details folgen.

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
@werner:
Ankunft 18:17auf gleis 15
Weiterfahrt nach Führt um 18:40 auf gleis 13
den Kaffee bitte mit Milch und Zucker.


Danke!
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Weiterfahrt nach Führt

Ich hoffe, Du findest den richtigen Zug  ;D  Streik hin oder her - diesen Bahnhof gibt es nicht  ;D

Bernhard

PS: Gute und möglichst pünktliche Heimfahrt wünsche ich und ein schönes Wochenende  ;)

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Bernhard,
das liegt in  FRANKEN, DA WO DIE PAULI HERKOMMT.
Mehr muss man nicht wissen, wenn man aus München kommt.

grüsse

dau-in
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Die Pauli kommt aber aus Fürth.  ;D Bei "Führt" zeigte sich der DBAG-Computer ... irritiert, bot aber Pauli als Reiseziel an  ;D

Nochmals: Ein schönes Wochenende wünscht
Bernhard

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
Da ich die Leute anspreche und mich nicht per Zettel durchfrage, ist die Schreibweise unerheblich.
Unter der Voraussetzung, dass sie in Franken noch deutsch verstehen, natürlich.
So, und jetzt bin ich gespannt, ob der fränkische Kaffeeservice klappt.

grüsse

dau-in
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

Offline koehlerbv

  • Moderator
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 20.460
  • Geschlecht: Männlich
Da ich die Leute anspreche und mich nicht per Zettel durchfrage, ist die Schreibweise unerheblich.
Unter der Voraussetzung, dass sie in Franken noch deutsch verstehen, natürlich.

Ach so machst Du das  ;D Klar verstehen die Franken deutsch. Und wenn Du aussprichst, dass Du nach Vuirt willst, wird Dir bestimmt auch bestens geholfen.
Bleibt also nur noch den Daumen für den Kaffee zu drücken.

Bernhard

Offline WernerMo

  • @Notes Preisträger
  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 3.050
  • Geschlecht: Männlich
hallo,

so spät kann ich keinen Kaffee mehr bringen, bin ab 18 Uhr schon auf dem Heimweg mit anderen - bahnstreikgeschädigten Kollegen.
Wie oben geschrieben sitzen wir ja in Nürnbergs Norden ganz nah am Flughafen, schließlich war ja von "Abflug" die Rede.

Aber wenn ich es wenigstens 11/2 Stunden vorher weiß, dann werde ich es das nächste mal versuchen und dann gibts auch noch Lebkuchen oder Printen dazu.

Sorry dass es diesmal nicht klappt,
ist sonst nicht meine Art.
Gruß Werner
Gruß Werner
  o                                                  o   
 /@\  Nächster @Notes-Stammtisch  /@\  online Sept. 2020?
_/_\__________________________/_\_ Details folgen.

Offline pete_bla

  • Senior Mitglied
  • ****
  • Beiträge: 455
  • Geschlecht: Männlich
  • dot net gitz net!
Hi,

- jetzt möcht ich noch etwas weniger offtopic beitragen-

Das mit dem WebQuerySave, keinem SaveOptions und einem doc.Save kommt mir etwas verdächtig für den Fehler vor,
nur was hier Editoren- und Manager-Rechte unterschiedlich machen ist mir noch unklar  ???

- vergiss bitte weitere Infos am Montag nicht, sonst wärme ich das nochmals auf!
Eventuell noch existierende Rollen und ACL-Rechte (delete,replicate & copy...) der User
und wie der Agent "eingehängt" ist würden auch nützen.  8)

Grüsse und auch gute Heimreise!
Pete(r)
« Letzte Änderung: 12.10.07 - 18:36:40 von pete_bla »
pete(r)

Offline DAU-in

  • Gold Platin u.s.w. member:)
  • *****
  • Beiträge: 1.129
  • Geschlecht: Weiblich
  • - unterwegs -
ja, ich bemühe mich.

bis Montag!
mühsam ernährt sich das Eichhörnchen

aktuelle Tätigkeit: Feldschubse

 

Impressum Atnotes.de  -  Powered by Syslords Solutions  -  Datenschutz