Vi har en fælles adressebog, som alle vores medarbejdere har ret til at oprette i, men desværre, kan der go ledt ged i den en gang imellem , mest fordi folk ikke staver på samme måde alle steder. Vi har et kategori felt, som kun brugere i acl med [kategoriopretter] skal kunne ændre værdier men de andre må godt kunne vælge.
Feltet er et simpelt @dDbColumn opslag: @DbColumn("":"NoCache";"";"($ByCategory)";1)
Hvis du vil bibeholde interfacet med ét keyword felt og "allow values not in list", så er du nødt til i Inbut Validation eller Input Translation at lave et check, hvor du sammenligner indholdet i feltet med listen UNDER GEMNING (@IsDocBeingSeaved). Her er noget kode som jeg lige har skrevet og ikke har testet, men du burde kunne se idéen med den:
@If(@IsDocBeingsaved; ""; @Return("")); _hasrole := @UserRoles = "[kategoriopretter]"; @If(_hasrole; @Return(""); ""); REM { brugeren har ikke rolle, undersøg om nuværende værdi er i listen}; _currentlist := @DbColumn("":"NoCache";"";"($ByCategory)";1); _field := @ThisValue; REM {N6}; _field := Category; REM {R5}; _inlist := _field = _list; @If(_inlist; @Success; @Failure("Du må ikke oprette en ny kategory. Vælg en kategori fra listen.")
Hej jogii har kigget lidt på den og ændret lidt i koden, jeg kan fint nok ikke få lov at oprette, men når jeg skal gemme med en af de nuværende kategorier, kommer den med 2 input validation fejl, men den gemmer alligevel.
@If(@IsDocBeingsaved; ""; @Return("")); _hasrole := @UserRoles = "[kategoriopret]"; @If(_hasrole; @Return(""); ""); REM { brugeren har ikke rolle, undersøg om nuværende værdi er i listen}; _list := @DbColumn("":"NoCache";"";"($ByCategory)";1); _field := @ThisValue; REM {N6}; _field := Categories; REM {R5}; _inlist := _field = _list; @If(_inlist; @Success; @Failure("Du må ikke oprette en ny kategory. Vælg en kategori fra listen."))
hvilken version anvender du? Hvad er fejlbeskedene? Hvordan opfører den sig hvis du indtaster en værdi der ikke er i kategorierne endnu, henholdsvis med [kategoriopret] og uden?
Vi bruger r5.08 Når jeg ikke har [kategoriopret]rollen får jeg 3 fejl.
Fejl 1: field didn´t pass validation formula. Fejl 2: Notes error - field didn´t pass validation formula Fejl 3: Du må ikke oprette en ny kategory. Vælge en fra listen. og hvis jeg så vælger en fra listen, kommer kun de 2 første, og den gemmer dokumentet.
og det er nøjagtig det samme, hvis jeg til deler mig selv rollen, [kategoriopret]
Du skal så fjerne linien med @ThisValue (N6). @ThisValue er en ND6 funktion.
Synes godt om
Ny brugerNybegynder
Din løsning...
Tilladte BB-code-tags: [b]fed[/b] [i]kursiv[/i] [u]understreget[/u] Web- og emailadresser omdannes automatisk til links. Der sættes "nofollow" på alle links.