go to post Edmara Francisco · Nov 28, 2022 Hello! For some reason, the query used by the idxExits method was frozen and was not returning the desired record. After unfreezing the query and recompiling the class, the idxOpen method started returning the record as expected. Thank you
go to post Edmara Francisco · Nov 22, 2022 Hello! Follow the requested information - did you made an in-place-upgrade or a clean install + data transferI made in-place-upgrade- the class in question is the same on IRIS and Cache (i.e. no change was made)Yes, is this same on IRIS and Cache, no change was made- is the class re-compiled (on IRIS)Yes, re-compilde on IRIS- what do you exactly mean when you say "Not opening an instance...": (1) you get an NULL-OREF or (2) you get an errorI get an NULL-OREF- what do you provide as a NULL value: (1) "", (2) $c(0), (3) " " or something else as open parameter""A shortened "" String Empty Shortened class: Class dado.TblTeste Extends (%Persistent, dado.Persistente) { Index idxFieldOneFieldTwoFieldThree On (FieldOneId, FieldTwoId, FieldThreeId) [ Unique ]; ForeignKey fkFieldOneId(FieldOneId) References dado.TblFieldOne(); ForeignKey fkFieldTwoId(FieldTwoId) References dado.TblFieldTwo(); ForeignKey fkFieldThreeId(FieldThreeId) References dado.TblFieldThree(); Property FieldOneId As dado.TblFieldOne [ Required ]; Property FieldTwoId As dado.TblFieldTwo [ Required ]; Property FieldThreeId As dado.TblFieldThree; Property Descricao As %String [ Required ]; Property VersaoCheck As %String [ InitialExpression = 0 ]; } Use: Set object = ##class(dado.TblTeste).idxFieldOneFieldTwoFieldThreeOpen(1, 2, "") Thanks
go to post Edmara Francisco · Nov 17, 2022 Hello, It didn't solve for me.... Analyzing the global, the values are the same in CACHE as well as in IRIS, if there wasn't any chance in global value. Anyone what changed from CACHE to IRIS that idxOpen can't found the data? Thaks