I see, thanks !
- Log in to post comments
I see, thanks !
up to now I would do it:
SELECT Name,Home_Street FROM Sample.Person ORDER BY +Home_Street
Where's the improvement ? I see no difference.
ERROR 5540 - User "UnknownUser" is not privileged for the operation.
This tells me that you don't login with a managed user with enough privileges.
So you could have a dedicated user just for this purpose.
OR
give "Unknown User" enough rights
OR
make use of a Privileged Application to assign temporary required Resources (my guess "%Developer")
more on this and pp.
http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.PortalHelpPa…
Adding a recipient to your mail could could eventually improve your result significantly
If no other part of your code does it.
http://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?…
Alexey,
You are totally right.
Indirection just does a mimic of "address" while it's in fact the "name" of a variable or global.
A kind of "symbolic addressing".
I used this rule of thumb:
selectivity > 8 % candidate for bitmap index
selectivity < 2 % normal index
in between it's a mater of investigation and other side conditions beyond selectivity
![]()
Olga,
You made my day.
It's really easy to follow and helps much more then the "short cutted" version.
I wish I had 5 votes.
![]()
I'd recommend Java as you are platform independent then.
Atelier + Eclipse are just another goody for developers
Hi Ken,
There is an easier way.
Instead of fiddling around with unpredictable params you just pass your whole symbol table = local variables
to your background job like this and use what you need in background
JOB ##class(%SYSTEM.OBJ.FM2Class).All():(:1):5
look for process-params + switch here
http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY…
Evgeny,
in SQL you have a CASE ... END block for selection
http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY…
CASE WHEN search_condition THEN value_expression [ WHEN search_condition THEN value_expression ... ] [ ELSE value_expression ] END CASE value_expression WHEN value_expression THEN value_expression [ WHEN value_expression THEN value_expression ... ] [ ELSE value_expression ] END
That's fine and nothing new.
You missed my point:
With the Class Query it's not self explaining if params got to Prepare() or to Execute()
http://docs.intersystems.com/latest/csp/documatic/%25CSP.Documatic.cls?…
I just learned from John Murray a few comments above
that you don't need a prepare with a Class Query.
I wasn't aware of that until a few hours ago.
Then it's obvious that any param has to go to Execute().
as the class is deployed YOU may have access to the sources.
SQL Error 417 = Security Error
You should check your access rights inside
- Windows
- Caché
Hi Ken,
For some odd reason Execute() requires he same parameters as Prepare() again !
%SYS>set rs=##class(%ResultSet).%New("Config.MapGlobals:List")
%SYS>write rs.Prepare("ENSDEMO","*")
1
%SYS>write rs.Execute("ENSDEMO","*")
1
%SYS>write rs.Next()
1
%SYS>..... Just hacking around.If the owner of a table is _PUBLIC, users do not need to be granted object privileges to access the table.
http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY…
based on that you can build an OWNER that has also limited rights (only SELECT, REFERENCES, .. or whatever)
So you do it for this Owner only
As you said all are unique
I try to summarize it simple:
IDkey is used in storing object s. Best to be translated : Global subscript of data store.
Could be defaulted to %Integer >0
Unique key defines an index with unique values of a property in parallel to IDkey. Checked during object save.
PrimaryKey comes from SQL world and could be interpreted mostly as a synonym to IDkey
ENSDEMO>d $system.SQL.Shell()
SQL Command Line Shell
----------------------------------------------------
The command prefix is currently set to: <<nothing>>.
Enter q to quit, ? for help.ENSDEMO>>select * from Ens_Config.Credentials
1. select * from Ens_Config.Credentials
ID BusinessPartner PasswordObject Password SystemName Username
.... Rows(s) Affected
or more object style
write ##class(%Library.TimeStamp).XSDToLogical(obj.biometrics.%Get(0).timestamp)
write $TRANSLATE(obj.biometrics.%Get(0).timestamp,"T"," ")
Just add another IF condition and replace all "Country" by " Relation"
If ($g(pInfo:filters("Relation"))'="") {
Set tWHERE = tWHERE _ $S(tWHERE="":"",1:" AND ") _ "Relation %STARTSWITH '" _ pInfo:filters("Relation") _ "'"
}
assuming variable payload holds your content of "payload"
set profileId=$piece($piece(payload,"profile_id"":""",2),""",")
set timestamp=$piece($piece(payload,"timestamp"":""",2),""",")
try
Do ##class(%SQL.Util.Procedures).CSVTOCLASS(2, .rowType, pFileName, pDelimiter,,1)
;; no defaults if not required or the EXACT count: 9 params = 8 comma
;; I counted 9
and/or
Property Name As %String (MAXLEN="");
and/or
;; the last comma in rowType looks also suspect to me.
set rowType=" . . . . ,ActiveStatus Boolean"
HTH
yeah,
that's for slow typing senior writer's without autocomplete. ![]()
BTW. wrapping of this editor is sometime more than disturbing.
definitely the shortest !
It's still the same answer as in one of your previous questions:
only difference 1 hour instead of 24 hours
https://community.intersystems.com/post/configure-business-service
See the example on ENSDEMO namespace
like this:
set ts=20160105125915
;; convert to $H
set th=$zdth($e(ts,1,8)_" "_$e(ts,9,10)_":"_$e(ts,11,12)_":"_(ts#100),8)
;; convert to UTC
set tu=$ZDTH(th,-3)
;; show $ZTS format (on UTC+0200 Vienna,Austria)
write $ZTD(tu,3)
2016-01-05 13:59:15
You can of course do it in a single unreadable long cascaded function chain.
HTH
Sebastian,
I share your considerations.
My personal interpretation of the IRIS message:
- go for Java for any application code and make use of the large developer market
- stay in COS ( or .int) for internal DB manipulation with in depth "System Engineers"
it's obviously just visible to you!
Well done !! ![]()
my full support to 3 !!!! and to 5, 2, 4 in this priority.
The difference between ANSWER and COMMENT causes more confusion than being helpful.
Especially in the actual sequence.
Comment to Answers eventually may make sense.
More than once I found myself in a Comment where it should have been an Answer.
My suggestion:
-handle all editing just in a modal pop-up .
- allow deleting (or hiding) your entry if you don't feel it appropriate anymore.