Robert Cemper · Dec 5, 2022 go to post

It is less effort to install swager-ui manually from the repo than a backport of ZPM

Robert Cemper · Dec 5, 2022 go to post

Hi @Mark Charlton 
it is simpler:

  • minimum is a GitHub account.
  • create repo using the template
  • enable Actions
  • add your code
  • code quality is triggered by a GitHub -workflow that you imported

Neither Docker nor ZPM is required for Code Quality.
It's just nice to have and well prepared for demo.
 

Robert Cemper · Dec 1, 2022 go to post

Same as last year I will provide the results of our private leaderboard 

  • It will sort by published ranking but separate DC members from "guests"
  • The matching of DC members is a manual task 
  • if I missed you pls. let me know your identity in AoC by DC mail  to add your DC flag
  • updates will always happen in this reply
  •  
  • FINAL LISTING from AoC2022
    • DCrank  AOCrank Scores  Stars   Name
      ---     ---     ----    ----    --- DC Members ---
      1       1       5467    50      Kevin An
      2       2       5298    50      maxymczech
      3       4       5182    50      Robert Barbiaux
      4       8       4279    40      Yuval Golan
      5       9       3732    36      Oliver Wilms
      6       10      3003    30      Ivo ver eecke
      7       13      2825    30      Mark Charlton
      8       14      2660    25      Keith Avery
      9       18      2160    23      TylerFeldhege
      10      21      1785    18      Muhammad Umar Waseem
      11      23      1438    16      Laura Cavanaugh
      12      22      1352    16      Shamus Clifford ^ISC
      13      26      776     9       Udo Leimberger
      14      27      774     8       Paul Cranston
      15      29      710     8       rhodery
      16      31      485     6       Mike
      17      34      82      1       Davi-Massaru
      18      ---     ----    ----    --- DC but not COS ---
      19      3       5196    50      rcemper
      20      7       4858    50      otto-k
      21      ---     ----    ----    --- unknow in DC ---
      22      2       5408    48      Anja Ostovršnik
      23      5       5111    50      Dominik Znidar
      24      6       5088    50      Jarjar 314
      25      10      3703    33      Алёна Полищук
      26      11      3610    33      Alyonka
      27      12      3107    32      (anonymous user #1614379)
      28      11      2894    30      Jesper Olsson
      29      12      2875    30      Shafran Cat
      30      15      2648    28      John Mesin
      31      16      2231    22      nwattana
      32      17      2223    22      hazamashoken
      33      18      1987    19      (anonymous user #2793860)
      34      19      1965    20      j-dolenc
      35      20      1917    20      LFY
      36      22      1545    16      unikrubii
      37      24      1359    14      Paphawit Ngamchaliew
      38      25      1203    14      Dieter PAUL
      39      28      765     8       rcniinoi
      40      30      547     6       (anonymous user #2357048)
      41      30      527     6       alex2008alex
      42      32      206     2       gvatash
      43      33      86      1       cbarrette9
       
      44 Rows(s) Affected
       
      UTC 2022-12-29 14:51:07
      EST 2022-12-29 09:51:07
Robert Cemper · Nov 24, 2022 go to post

Add this line to your test:

Set object = ##class(dado.TblTeste).idxFieldOneFieldTwoFieldThreeOpen(1, 2, "")
If 'object Do $system.OBJ.DisplayError()

So you see the reason for failing

Open by unique index reqires an EXACT match

Robert Cemper · Nov 16, 2022 go to post

Once you have your own children you would learn that there is no need to TEACH interest.
If your children accept you they follow your path. anything else is just academic nonsense.

So proven by my 3 highly adult and successful children and 4 grandchildren following the traces.

Robert Cemper · Nov 12, 2022 go to post

my review on OEX now shows also if the package supports IPM
all 19 reviews have been updated

Robert Cemper · Nov 9, 2022 go to post

To achieve the expected result of individual storage you may take this approach:

Class Test.NewClass Extends %Persistent [ NoExtent ]
{
Property Name As %String [ Required ];
Index NameIndex On Name [ Unique ];
}

and
 

Class Test.NewClass1 Extends Test.NewClass
{
Storage Default
{
<Data name="NewClass1DefaultData">
<Value name="1">
<Value>%%CLASSNAME</Value>
</Value>
<Value name="2">
<Value>Name</Value>
</Value>
</Data>
<DataLocation>^Test.NewClass1D</DataLocation>
<DefaultData>NewClass1DefaultData</DefaultData>
<IdLocation>^Test.NewClass1D</IdLocation>
<IndexLocation>^Test.NewClass1I</IndexLocation>
<StreamLocation>^Test.NewClass1S</StreamLocation>
<Type>%Library.CacheStorage</Type>
}

}

and you see:
ERROR #5808: Key not unique: Test.NewClass1:NameIndex:^Test.NewClass1I("NameIndex"," A1")

Robert Cemper · Nov 9, 2022 go to post

no big surprise.
if IDKEY <> PrimaryKey then PrimaryKey is just a UNIQUE Key on some property.

I expected it as on object side you have %OpenId()  but no %OpenPrimary() or similar.
only Classmethod  <uniqueProperty>KeyOpen(...)

Robert Cemper · Nov 7, 2022 go to post

there is a quite wide selection of licenses.
the best for details is to contact your local sales rep from InterSystems to find your optimal solution

Robert Cemper · Nov 3, 2022 go to post

Following this discussion since beginning I'm wondering about the variant I've learned.
my personal approach would be.
#1)
have an exact copy of your class also pointing to the same storage
remove all index definitions from that clone class
run your bulkload
#2)
if you don't want to have the same storage
just eliminate the index definitions in the copy
clean its storage and run your bulk load
finally, merge the resulting globals

#' .)
It's not pure OO,
but writing to storage is never OO with Caché or IRIS 

Robert Cemper · Oct 28, 2022 go to post

GREAT!
Looks like embedded Py starts to understand how IRIS really works inside !!!!  yes  

Robert Cemper · Oct 27, 2022 go to post

I'd say it's a bug in Query Generator.
A workaround in DB-API just might hide the real cause. 
If you are lucky the bug is fixed by the next release or the next after or some future release

Robert Cemper · Oct 27, 2022 go to post

thanks for confirming my diagnose
- that's why I used "+id as id1" to break the link to index global
- and :BTW:   ORDER BY 1  ; just using column position shows the same bug

Robert Cemper · Oct 26, 2022 go to post
set claim=##class(Claim).%OpenId(claimnum)  ; or similar
set line=##class(ClaimLine).%OpenId(linenum) ; or similar
do claim.ClaimLineRel.Insert(line)

now your query should work

Robert Cemper · Oct 25, 2022 go to post

Why would you want to do this?
the index related to %Save() is no "build" but just setting a value to the index global. 
setting an index is mostly less load than saving an object.

Robert Cemper · Oct 23, 2022 go to post

A possible workaround 

SAMPLES>set rs= ##class(%SQL.Statement).%ExecDirect(,"SELECT +id id1, x, y, z FROM some_table ORDER BY id")

SAMPLES>while rs.%Next() { zwrite $listbuild(rs.id1, rs.x, rs.y, rs.z) }
$lb(1,1,2,"z1")
$lb(2,2,3,"z2")
$lb(3,3,4,"z3")
$lb(4,4,5,"z4")

SAMPLES>

The point is to consume your value NOT from temp order global.

tested in 
Cache for Windows (x86-64) 2018.1.7 (Build 721U) Fri Mar 18 2022 22:07:35 EDT
Should also work in IRIS