Resource.Image BL.EC.Common,Prod.Product 1 TECH.RegisteredObject ImageLinkControle_01.01 DocType voor task-keywords (zie ook BL.Sys.FOP.Common.INC) PRIJSLIJST PrijsLijst PL ICT6050 PB;AG;FO;VG;IL;FI;TA;QT;VB;VF;MO;PL;PI;CA FLOAPT PR APPS.common.enu.Toepassing.AutoComplete 1 1 EPS wordt gereactiveerd en de EPS (key VX) wordt aangemaakt Status = "S" -> SVG wordt gereactiveerd en de EPS (key VX) wordt verwijderd Status = "" -> SVG wordt gedeactiveerd]]> 1 PRNr,Status="E" %ID,Element_Key,Links_VisueelType,Links_Extensie,Links_Pad,Links_BestandsNaam,ImageLink->AspectRatio,ImageLink->ScaleFactor INTO :ImgID,:Key,:VisueelType,:Extensie,:Pad,:Naam,:AspectRatio,:Scale FROM Res.ImageLink_Links WHERE (ImageLink->ObjType='PR') AND (ImageLink->ObjRef=:PRNr) AND (Links_VisueelType='V') OR (Links_VisueelType='VX') ) &sql(OPEN SVGSet) For &sql(FETCH SVGSet) Quit:SQLCODE Do . Do ..SVGSetByFileName(Pad,Naam,Status) &sql(CLOSE SVGSet) ]]> 1 Pad,Naam,Status %ID,Element_Key,Links_VisueelType,Links_Extensie,Links_Pad,Links_BestandsNaam,ImageLink->AspectRatio,ImageLink->ScaleFactor INTO :ImgID,:Key,:VisueelType,:Extensie,:Pad,:Naam,:AspectRatio,:Scale FROM Res.ImageLink_Links WHERE (Links_BestandsNaam=:Naam) and (Links_Pad=:Pad) and (Links_VisueelType='V') OR (Links_VisueelType='VX') ) &sql(OPEN SVGSetFile) For &sql(FETCH SVGSetFile) Quit:SQLCODE Do . Set oImg=##class(Res.ImageLink).%OpenId(ImgID) . Set PRNr=$P(ImgID,"||",2) . Write ImgID," ",$P($G(^KPR(PRNr,0)),"\"),! . Set oLink=oImg.Links.GetAt("V") . Quit:'$isObject(oLink) . If Status="E" Do ; enable als EPS . . Set oLink.VisueelType="V" . . Set oLink.Extensie="SVG" . . Set oLink2=oLink.%ConstructClone() . . Set oLink2.VisueelType="V" . . Set oLink2.Extensie="EPS" . . Do oImg.Links.SetAt(oLink2,"VX") . Else If Status="S" Do ; enable als SVG . . Set oLink.VisueelType="V" . . Set oLink.Extensie="SVG" . . Do oImg.Links.RemoveAt("VX") . Else If Status=0 Do ; disable . . Set oLink.VisueelType="VX" . Set sc=oImg.%Save() . Write $$ParseStatus^vhLib(sc) &sql(CLOSE SVGSetFile) ]]> Of bij het afdrukken van het document plaatst moet gereserveerd worden om een Image column te tonen. KLNr,DocType,DocRef %Boolean Of bij het afdrukken van het document voor dat product een image (indien bestaande) mag geplaatst worden. Action = PRINT; MAIL; FAX; FILE KLNr,PRNr,DocType,DocRef,Action %Boolean Ophalen van de CRM definitie afhankelijk van klant, productgroep en documenttype. met cascade van klant naar regio en Allen en met cascade van productgroep naar Allen KLNr,ProdGrp,DocType %Integer Definieren van de DocTypes waarbij de klant afbeeldingen wenst. Indien lbDocTypes="DEFAULT" dan wordt de definitie gewist en wordt er terug gedefault vanuit regio KLNr,lbDocTypes:%List Ophalen van de DocTypes waarbij afbeeldingen getoond worden voor die klant Indien NIET klantspecifiek gedefinieerd dan wordt IsDefault opgezet D ##class(BL.Prod.ImageLink).InitCRMImage() 1 1 ProductID:%String 1 APPS.PM.Maatwerk.AfbeeldingService.impl.TBXLadeImageCodeBepalerInput 1 ProductID:%String 1 %String Bepaalt aan de hand van de productkenmerken de code voor het beeld Het eigenlijke beeld moet nog opgezocht worden in datastructuur Res.ImageLink 1 PRNr:%String 1 %String 1 LadeImageCodeBepalerInput:APPS.PM.Maatwerk.AfbeeldingService.impl.TBXLadeImageCodeBepalerInput %String 1 PRNr:%String 1 Parameter Gebruik = Intern of Extern URLMode = FLEX,WEB,FOP,FILE, ... w ##class(BL.Prod.ImageLink).%New().GetInfoPageURL() PRNr:%Integer,Gebruik:%String="E",Taal="N" Gebruik = Intern of Extern 1 ProductID:%String,InternGebruik:%Boolean,InclMoeder:%Boolean=0 %String d ##class(BL.Prod.ImageLink).DelObj(PRNr) 1 PRNr d ##class(BL.Prod.ImageLink).DelObj(PRNr) 1 PRNr %Boolean 1 VanPRNr,NaarPRNr d ##class(BL.Prod.ImageLink).ControleImageURLs() 1 Toepassing:APPS.common.enu.Toepassing %ID,Element_Key,Links_VisueelType,Links_Extensie,Links_Pad,Links_BestandsNaam,ImageLink->AspectRatio,ImageLink->ScaleFactor,Links_Sequence INTO :ImgID,:Key,:VisueelType,:Extensie,:Pad,:Naam,:AspectRatio,:Scale,:Sequence FROM Res.ImageLink_Links) &sql(OPEN CtrlImgURL) For &sql(FETCH CtrlImgURL) Quit:SQLCODE Do . Set URL=bl.CreateURL(Toepassing,Pad,Naam,Extensie,$S(Sequence:1,1:"")) . If '##class(%File).Exists(URL) Do ;Bestaat niet . . If $P(ImgID,"||")="PR" Do . . . Set KortTekst=$P($G(^KPR($P(ImgID,"||",2),0)),"\",1) . . Else Do . . . Set KortTekst="" . . Write ImgID,*9,KortTekst,*9,Key_$S(Sequence:"."_Sequence,1:""),*9,Pad,"\",Naam,".",Extensie,! &sql(CLOSE CtrlImgURL) ]]> Extra Parameter ImgInfo (bevat de ImageLinkID's en de URL)]]> %String Toepassing : FLEX, VHINTRASHELL, WEB, FOPLINK, FOPEMBED, LABEL, PRINT, FILE, WMS, MAKOVA FormatPref : De toepassing default de FormatPreferenties $LB("SVG";"JPG") w ##class(BL.Prod.ImageLink).%New().GetImageURL("TBX","DZ_ER","MAKOVA") %String %ID As ImgID,Element_Key As Sleutel,Links_VisueelType As VisueelType,Links_Extensie As Extensie,"_ " Links_Pad As Locatie,Links_BestandsNaam As Naam,ImageLink->AspectRatio As AspectRatio,ImageLink->ScaleFactor As Scale"_ " FROM Res.ImageLink_Links"_ " WHERE (ImageLink->ObjType = ? ) AND"_ " (ImageLink->ObjRef = ? ) AND"_ " (ImageLink->FunctieType = ?) AND"_ " ((ImageLink->Taal = ?) OR (ImageLink->Taal IS NULL))" #dim SelectMin As %Integer = 99999 #dim ResultSet As TECH.ResultSet = $$ExecDynQuery^vhLib.Query(Query, $ListBuild(ObjType, ObjRef, FunctieType, Taal)) While (ResultSet.Next()) { #dim VisueelType As %String = ResultSet.Data("VisueelType") #dim PositieVisueelType As %Integer = $ListFind(Pref, ResultSet.Data("VisueelType")) If (PositieVisueelType > 0) { #dim Extensie As %String = ResultSet.Data("Extensie") #dim PositieExtensie As %Integer = $ListFind($List(Pref, PositieVisueelType + 1), Extensie) If (PositieExtensie > 0) { #dim SelectVal As %Integer = (PositieExtensie + (PositieVisueelType * 100)) If (SelectMin > SelectVal) { Set SelectMin = SelectVal Set SelectID = ResultSet.Data("ImgID") Set SelectKey = ResultSet.Data("Sleutel") Set SelectVisueelType = VisueelType Set SelectExtensie = Extensie Set SelectPad = ResultSet.Data("Locatie") Set SelectNaam = ResultSet.Data("Naam") Set SelectAspectRatio = ResultSet.Data("AspectRatio") Set SelectScale = ResultSet.Data("Scale") } } } } #dim URL As %String = "" If $$$Not(SelectNaam = "") { Set URL = ..CreateURL(Toepassing, SelectPad, SelectNaam, SelectExtensie) If Toepassing?1(1"FOPEMBED".E) { Set URL = ##class(BL.FOP.Basis.pxAttribType).Create(URL, $Select($$$UCase(SelectExtensie)="SVG":"SVG", 1:""), $Justify(SelectAspectRatio, 0, 4), $Justify(SelectScale, 0, 2)) } } Set ImgInfo("URL") = URL Set ImgInfo("SelectID") = SelectID Set ImgInfo("SelectKey") = SelectKey Quit URL ]]> Toepassing:APPS.common.enu.Toepassing %List DirectoryCode:%String 1 %Boolean DirectoryCode:%String 1 %Boolean DirectoryCode:%String 1 %Boolean Toepassing:APPS.common.enu.Toepassing,Pad:%String,FileNaam:%String,Extensie:%String,Sequence:%String="",DirectoryCode:%String="" 1 Sequence:%String 1 %String 1 RelatiefPadNaarFolderOnderImagesFolder:%String,FileNaam:%String,Extensie:%String,Sequence:%Integer %String 1 Pad1,Pad2,Delim AND (Taal=:Taal OR isnull(Taal,"*")="*") %Query ObjType,ObjRef,lbFunctieType:%List,Taal 0 AND (Taal=:Taal OR isnull(Taal,'*')='*') ORDER BY $ListFind(:lbFunctieType,FunctieType)]]> %SQLQuery ID:%String,FunctieType:%String,lbVisueelType:%List,lbExtensie:%List,Taal ID=:ID AND ImageLink->FunctieType=:FunctieType AND $ListFind(:lbVisueelType,Links_VisueelType)>0 AND $ListFind(:lbExtensie,Links_Extensie)>0 AND (ImageLink->Taal=:Taal OR isnull(ImageLink->Taal,'*')='*') ORDER BY $ListFind(:lbVisueelType,Links_VisueelType),$ListFind(:lbExtensie,Links_Extensie)]]> 1 1 1 Pad1,Pad2,BestandsNaam,Sequence,Extensie,Delim =================================================================================================================================================== QUERY: QGetLinks =================================================================================================================================================== %Query PRNr,lbFunctieType:%List,lbVisueelType:%List,lbExtensie:%List,Taal 1 0 %Status 0 AND (Taal=:Taal OR isnull(Taal,'*')='*') ORDER BY $ListFind(:lbFunctieType,FunctieType) ) &sql(OPEN GetViaFunctieTypes) Kill Result For &sql(FETCH GetViaFunctieTypes) Quit:SQLCODE Do . For I=1:1:$S(Sequence:Sequence,1:1) Do . . Set Result($I(Result))=..BldName(.StartPad,Pad,BestandsNaam,$S(Sequence:I,1:0),Extensie,.Delim) &sql(CLOSE GetViaFunctieTypes) New RS,Query Set Query="Res.ImageLink:GetLinksUnsorted" Set RS=##class(%ResultSet).%New(Query) Quit:(RS=$$$NULLOREF) $$$ERROR($$$QueryCannotInstantiate,"Kan geen nieuwe instantie van de query '"_Query_"' maken.") New tmpStatus Set tmpStatus=RS.Execute(paObjType,paObjRef,palbFunctieType,palbVisueelType,palbExtensie,paTaal) Quit:($$$ISERR(tmpStatus)) tmpStatus Kill aRow,Loop New Index For Quit:('RS.Next()) Do . Set Index=$$qgleGetIndexNr(palbFunctieType,RS.Data("FunctieType"),1)_$$qgleGetIndexNr(palbVisueelType,RS.Data("VisueelType"),1)_$$qgleGetIndexNr(palbExtensie,RS.Data("Extensie"),1) . Set Index=Index_"."_RS.Data("ImageLinkID")_"||"_RS.Data("aLinksKey") ;gewoon achteraan toevoegen om de sleutel zeker uniek te maken . Set aRow(Index)=$LB(RS.Data("ImageLinkID"),RS.Data("aLinksKey"),RS.Data("ObjType"),RS.Data("ObjRef"),RS.Data("FunctieType"),RS.Data("VisueelType"),RS.Data("Extensie")) Set iLoop="" Quit $$$OK ;-------------------------------------------------- qgleGetIndexNr(lbFilter,ItemToCheck,CheckForWildCard) ;Indien er slechts één element in de filter zit, dan kan een lege indexstr wo teruggegeven aangezien sortering dan toch onbelangrijk is Quit:($LL(lbFilter)=1) "" New IndexNr Set IndexNr=$LF(lbFilter,ItemToCheck) Quit:(CheckForWildCard && (IndexNr=0)) $$qgleGetIndexNr(lbFilter,"*",0) ;Check for WildCard afzetten vermijdt oneindige recursie... Quit $E(1000+IndexNr,2,4) ]]> --------------------------------------------------------------------------------------------------------------------------------------------------- 1 GetViaFunctieTypesExecute 0 %Status --------------------------------------------------------------------------------------------------------------------------------------------------- 1 GetViaFunctieTypesExecute 0 %Status =================================================================================================================================================== %Query paObjType:%String,paObjRef:%String,palbFunctieType:%String=$LB("*"),palbVisueelType:%String=$LB("*"),palbExtensie:%String=$LB("*"),paTaal:%String =================================================================================================================================================== %SQLQuery paObjType:%String,paObjRef:%String,palbFunctieType:%String=$LB("*"),palbVisueelType:%String=$LB("*"),palbExtensie:%String=$LB("*"),paTaal:%String %ID,Element_Key,ImageLink->ObjType,ImageLink->ObjRef,ImageLink->FunctieType,Links_VisueelType,Links_Extensie FROM Res.ImageLink_Links WHERE (ImageLink->ObjType=:paObjType) AND (ImageLink->ObjRef=:paObjRef) AND (($ListFind(:palbFunctieType,'*')>0) OR ($ListFind(:palbFunctieType,ImageLink->FunctieType)>0)) AND (($ListFind(:palbVisueelType,'*')>0) OR ($ListFind(:palbVisueelType,Links_VisueelType)>0)) AND (($ListFind(:palbExtensie,'*')>0) OR ($ListFind(:palbExtensie,Links_Extensie)>0)) AND (ImageLink->Taal=:paTaal OR ISNULL(ImageLink->Taal,'*')='*')]]> =================================================================================================================================================== QUERY: QGetLinksViaID =================================================================================================================================================== 1 0 %Status --------------------------------------------------------------------------------------------------------------------------------------------------- 1 QGetLinksViaIDExecute 0 %Status --------------------------------------------------------------------------------------------------------------------------------------------------- 1 QGetLinksViaIDExecute 0 %Status =================================================================================================================================================== %Query paImageLinkID:%String,paFunctieType:%String,palbVisueelType:%String=$LB("*"),palbExtensie:%String=$LB("*"),paTaal:%String =================================================================================================================================================== %SQLQuery paImageLinkID:%String,paFunctieType:%String,palbVisueelType:%String=$LB("*"),palbExtensie:%String=$LB("*"),paTaal:%String %ID=:paImageLinkID) AND (ImageLink->FunctieType=:paFunctieType) AND (($ListFind(:palbVisueelType,'*')>0) OR ($ListFind(:palbVisueelType,Links_VisueelType)>0)) AND (($ListFind(:palbExtensie,'*')>0) OR ($ListFind(:palbExtensie,Links_Extensie)>0)) AND (ImageLink->Taal=:paTaal OR ISNULL(ImageLink->Taal,'*')='*')]]>