James Hipp · Apr 14, 2021 go to post

Hey Robert,

One additional question - if i wanted to execute SQL-type queries via Python script. Something like PyODBC is probably a better fit for that use case. Would you agree?

Thanks

James Hipp · Aug 7, 2019 go to post

Thanks Robert. I missed that warning when I was reading through the docs. That makes sense.

Appreciate the clarification.

  • James
James Hipp · Aug 7, 2019 go to post

Hey Joel,

One more question in relation to this.

I found the documentation page on the auto-generated method for PropertyGetStored, but how do I know if a class has this auto-generated function available?

For instance, I can use this function for Security.Users:

%SYS> w ##class(Security.Users).EnabledGetStored("jhipp")

1

But this method does not exist for SYS.Database:

%SYS> w ##class(SYS.Database).MaxSizeGetStored("USER")

<METHOD DOES NOT EXIST> .....

Are the auto-gen functions only available to certain classes?

Thanks Again,

James

James Hipp · Jul 30, 2019 go to post

Hello Alexey,

I appreciate your input. This method accomplishes what I mentioned earlier as well in my workaround. I personally do not like using 'EOF' in my scripts  because it can be very sensitive with indentation and whitespace. But regardless, with either method I am going to have to parse out the 5th line of output with awk if I just want to return the true value and not the entire Cache terminal output. 

I would consider your solution a 'workaround' as well , but you are correct this does work. I just did not know if there was a way to only return the global value to STDOUT much like cconsole can do with routine calls.

Thanks,

James

James Hipp · Jul 29, 2019 go to post

Hey Joel,

Thanks for the input, single quotes is easier than using slashes to escape the double quote characters.

That particular command may not be the best example to accomplish what I am looking for, but it was more of just a general question about the best way to write out global values. For instance, we have a script that checks for Users that exists in Cache, so that requires us to write out a global boolean value for Security.Users.Exists(). And similar things like that.

Thanks,

James

James Hipp · Jul 29, 2019 go to post

Thanks Joel. This is exactly what I was looking for. The explanation is helpful as well.

- James