go to post Dmitry Maslennikov · Dec 5, 2017 Look at the documentation, there are some formats available to use in the $zdate function. Where 11 (abbreviated) and 12(full) looks like what you need. write $zdate($h, 11) Tue Write $zdate($h, 12) Tuesday
go to post Dmitry Maslennikov · Dec 5, 2017 you can use function DATEDIFF from SQL write $system.SQL.DATEDIFF("yy", $zdh("01.01.1990",4), $h)
go to post Dmitry Maslennikov · Dec 2, 2017 It would be better if you can add your SQL query, and if it is not a secret also Classes definition. So, we could see if something may be wrong with it. And you also should look at the book in the documentation about SQL Optimizations.
go to post Dmitry Maslennikov · Dec 2, 2017 set input="1212" set len=$l(input)/2 set sum=0 f i=1:1:len { if $e(input,i)=$e(input,len+i),$i(sum, i*2) } zw sum
go to post Dmitry Maslennikov · Dec 2, 2017 I also started from $zstrip, but in task 1111 should produce 1, when $zstrip returns only one 1.for the second task, you should simply compare values from the first half of string with the same position from the second half.
go to post Dmitry Maslennikov · Dec 2, 2017 If anybody wants to join this advent, we can use our own private leaderboard, with my code 130669-ab1f69bf.
go to post Dmitry Maslennikov · Dec 1, 2017 ClassMethod HelloWorld(Name As %String) { set result = { "name": (Name) } quit result.%ToJSON() }
go to post Dmitry Maslennikov · Dec 1, 2017 Why do you use such a strange url? You created the application with your class as Dispatch class. So, in this case, you should call this. http://localhost:57772/USER/REST/Arun where /USER/REST is web application, and everything else is already what should be in a REST. PS. I would not recommend do not use uppercase for web applications
go to post Dmitry Maslennikov · Dec 1, 2017 You can use colon to achieve it <Route Url="/checkUID/:uid/:supplierid/" Method="GET" Call="Some.Other.Class:checkUID"/> With Map tag in UrlMap, you can simply split your big UrlMap by multiple classes
go to post Dmitry Maslennikov · Nov 30, 2017 Something like this, but in %SYS namespace. Documentation %SYS>s props("Database")="SAMPLES",sc=##Class(Config.MapPackages).Create("USER","PackageA",.props)
go to post Dmitry Maslennikov · Nov 28, 2017 After all details, it means, that no reasons to use $lb, or any other ways, it should be as is as a string, but with this length's header. In Cache, we don't have binary strings as do other languages, but what is a byte, it is a symbol for text, so text will be arrays of bytes. write $c(166, 70, 114, 105, 110, 103, 101) ¦Fringe The only thing you should care as already mentioned above is different codepages. Let's try for some example: And try to get the same. USER>set data="TestТест" USER>zzdump data 0000: 0054 0065 0073 0074 0422 0435 0441 0442 TestТест USER>set msg=$zcvt(data,"O","UTF8") ; convert from Unicode USER>set msg=$c(160+$l(msg))_msg ; of course should be changed for bigger text USER>zzdump msg 0000: AC 54 65 73 74 D0 A2 D0 B5 D1 81 D1 82 ¬TestТеÑ.Ñ. and as you can see we got the same result
go to post Dmitry Maslennikov · Nov 27, 2017 What do you mean by overhead from $lb? What is $c(166), some magic number? And why you encode the string as a list of codes, why not keep it as a string?$lb it is also a string, but compressed for some types of values.
go to post Dmitry Maslennikov · Nov 27, 2017 I think bitlogic operations is the best which you can use with bitstring.
go to post Dmitry Maslennikov · Nov 23, 2017 I love Docker way. In Dev environment, when you need only some test data. You can use Docker, with all test data inside the image, just recreate container will clean all previous changes and return the database to state when this image was built. If you later will decide to keep some changes as default for next uses, you can commit this changes to the image.
go to post Dmitry Maslennikov · Nov 12, 2017 Not sure, but maybe property method GetStored can help. It is ClassMethod which accept object Id as the first argument. Full name for the method <Property>GetStored(id)