Great idea !
ONE -> MANY but MANY is UNIQUE
![]()
- Log in to post comments
Great idea !
ONE -> MANY but MANY is UNIQUE
![]()
I see just nothing in SQL that relates to the error message.
my only wild guess: some NULL value results confuse the VB end.
You could eventually bypass it using NVL() function
The most simple way to do it:
in class Table.A have
Property TableB as Table.B;
in class Table.B have
Property TableA as Table.A;
in your code it may look like this:
You are free to index properties TableA or TableB according to your needs
and you can also use Implicit JOIN between these tables.
How could you know that I was just looking for this ??? ![]()
Suggestion for a calculated Property:
OK. I understand those records where created BEFORE you defined your new column.
I checked the internal code
This tells me:
- Your value is Not Empty
- it has no valid time format, so it is trapped by the ERROR option and set to Zero ==>> 1840-12-31 00:00:00
Suggestion:
- set value to NULL for old records.
or
- create your own data type for this case.
or
- use a calculated Property to trap the values
What is your Query like ?
1840-12-31 00:00:00 is point Zero of internal time setting.
It applies as default to empty data type Ens.DataType.UTC
embedded SQL is probably an overkill for this formating.
Just convert it to the internal format, add what you need and assemble the pieces in COS
if you know exactly what characters you want to remove you may use $TRANSLATE (in SQL) !
docs: https://cedocs.intersystems.com/latest/csp/docbook/Doc.View.cls?KEY=RSQL_d_translate
THX ![]()
for the fixed part you still can use classic mapping.
for the variable section you may set
and get the raw XML structure in hands .
You can then analyze this "inner" XML using class %XML.TestReader
The example and the class are simply wrong
A %Library.DynamicObject that is composed here just has neither a method %Clone nor a method %Compose
You may report the bug to WRC
DCOUNT is a function of MV Basic. Not of ObjectScript !
should do the trick
Ah, getting closer:
The problem seems to reduce to an alternative way (a wrapper around) to %Open and %Delete.
it isn't the save yet. especially if some UNIQUE conflict prevents the save and requires a Rollback
delete isn't affected at all
As all you need is in %Persitent you could have your own personal.persitent extending %persitent
wrapping %Open and %Delete in your own extended code.
3 points to consider:
Sorry, I doubt if this is the right approach
take a look at %Library.Persistent. Methods
No further need of an %On.... to know success or failure
Allmost! 3rd Update
since if the left side is a Unix Timestamp, then you get this result:
docs: https://docs.intersystems.com/iris20201/csp/docbook/Doc.View.cls?KEY=RCOS_fzdatetime
timezone conversion from UTC may compensate the 6 hours difference !
in Middle Europ we have we have 2 hrs+ to UTC so
to complete this.
Docker has its storage here.
Fully agrees with Output.
though, is it worth a prodglog ?
method OpenSFTP(ByRef sftp As %Net.SSH.SFTP) as %Status
Open up an SFTP session for SFTP activity.
ByRef this means that the variable you pass has to be initialized first.
just binds the object type to variable sftp but doesn't initialize it.
So it is <UNDEFINED>
Use your original line instead or in addition to initalize it
![]()
I had to transfer more than a few files. so I shared a docker volume:
docker run ...... --name=iris1 -d -v volume1:/external ........
docker run ....... --name=iris2 -d -v volume1:/external ........so both containers have permanent access and can pass files as we use to pass Globals using IRISTEMP or CACHETEMP
The volume gets generated at first access automatically
Another issue I had is the requirement of Hyper-V.
The latest VMware Player 15.5.6 has no problem, with Hyper-V enabled anymore.
So they can be installed in parallel (if your disk space allows
)
@Luca Ravazzolo , @Jose-Tomas Salvador
I succeeded to force an upgrade of my Win 10 to 2004 and to activate WSL2 (installation blocked until VMware was de-installed !)
and Docker Desktop For WSL2.
Quite interesting to have a Windows-Installer for a Linux program. Take care to use version >2.3.0 2 for WSL2
And it was running as expected with no troubles. No issues with Images, Containers, Volumes, Networks.
It's an interesting experience, especially as I'm not forced to use PowerShell.
Communication with Win File System goes Docker ==> WSL2 ==> Windows.
Next positive surprise: my local C:\.. was mounted byWSL2 to /mnt/c/.... (I just tried read access)
Bad surprises:
- the guide to install / activate was just of limited help, partially confusing / contradictionary
Google helped with useful and just commercial advice.
- Reboots: after #5 I stopped counting
Still a challenge: I couldn't find out where WSL2 file system was homed on my C:\ drive.
see: https://cedocs.intersystems.com/latest/csp/docbook/Doc.View.cls?KEY=RSQL_into
&sql(SELECT Name, DOB, Gender INTO :Name,:DOB,:Gender
FROM osuwmc_RQGPatient.DataTable WHERE MRN=:MRN)
I think not that this is possible.
The reason was to make it as flexible as any other Dynamic query.
I'm convinced this was necessary to support Sharding.
But you have the option to write your own custom class query
I'd like to say a big Thank You ! to all participants that gave me their vote.
And I forgive the unknow experts that voted for me in the beginning and changed their mind shortly before closing as by the rules.