^%SYS.MONLBL is a great tool for profiling: http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GCM_monlbl
- Log in to post comments
^%SYS.MONLBL is a great tool for profiling: http://docs.intersystems.com/latest/csp/docbook/DocBook.UI.Page.cls?KEY=GCM_monlbl
First of all, this is bad sample of GROUP BY query, in my opinion:
SELECT c1, c2 FROM table2 GROUP BY c1
You are grouping by c1, but also selecting c2. GROUP BY collects all rows with the same c1 into one row. Each group of row with the same c1 might have different values of c2. What particular value of c2 you want to get?
Generally, if you query contains GROUP BY, SELECT should contain either expressions from GROUP BY, or aggregate functions. For example, following query is OK:
SELECT c1, max(c2) FROM table2 GROUP BY c1
Having said all that, you might try to concatenate column1 and columnn2
SELECT column1, column2, column 3
FROM table
WHERE
column1 || '===' || columnn2 IN (SELECT c1 || '===' || c2 FROM table2 GROUP BY c1)
ORDER BY column1
provided that values in these columns do not contain '==='
Another possibility is:
SELECT column1, column2, column 3
FROM table T1
WHERE EXISTS (SELECT 1 FROM table2 T2
WHERE T2.c1 = T1.column1
AND T2.c2 = T1.column2)
ORDER BY column1
I think GROUP BY is not necessary in second case.
Hi Token.
As I understand XML you provided in the beginning is the response to the SOAP request you are doing.
If that's correct, than this response is not validated with XML Schema from provided WSDL. You should check with developers who maintain this SOAP service if WSDL you have is correct.
Also you might try to change
Parameter NAMESPACE = "http://192.96.222.19/";
in Class Data.SOAP.CardData to
Parameter NAMESPACE = "http://111.12.123.11/";
Even if this helps, this would be temporary solution for one particular request, other might fail if you have not-correct WSDL.
Hi Token.
a) Please notice, WSDL that you provided is not correct.
For example, try to validate it in https://www.wsdl-analyzer.com/.
Or, download SOAP UI and try to create SOAP project based on this wsdl.
You'll see errors.
I've tried to import this WSDL into 2012.2.5 and got following error: ERROR #6294: Cannot find message part in schema: Classname not found for http://halykws/::GetContractsExt
b) Version you have is almost 7 years old. Please consider upgrading. Cache for UNIX (Red Hat Enterprise Linux 5 for x86-64) 2010.1.2 (Build 600U) Mon May 10 2010 23:28:54 EDT
c) If you need further help with this, please open WRC issue.
In any case, first thing you need to do is to have valid WSDL.
Hi Token.
Can you please attach complete wsdl and provide version of Caché that you use ('write $zversion').
Did you use SOAP Client Wizard to generate SOAP client classes from WSDL?
Hi Thomas.
Supported platforms for 2017.1 (http://docs.intersystems.com/documentation/ISP/ISP-20171.pdf#ISP_platforms_server) lists 'Ubuntu 16.04 LTS for x86-64*' as server platform, so maybe there should be separate kit for Ubuntu, not Suse one.
Hi Rich.
If you open project in Atelier Explorer it's right below classes, routines and CSP files:
Conn605:USER in this particular sample
Good! That you have this fixed now.
Try to open following URL in browser on the machine where the Atelier is installed:
http://server:57772/api/atelier/
What does it return?
Check in web applications settings that /api/atelier is enabled.
Check in System Dashboard that you have enough license units.
UPD: I modified URL to http://server:57772/api/atelier/
Hi Token.
Yes, you need to specify expected namespace for tag CardData. Do you know what it should be?
How do you generate this XML? Please provide small code sample. Do you have XML schema definition for CardData? If yes, please provide it.
Thomas,
what version of Ubuntu do you have? What version of Caché do you install?
Please check with "Supported Technologies Information" section of documentation for this Caché version.
For example, Caché 2016.2.1 supports Ubuntu 16.04 x86-64 as development platform (http://docs.intersystems.com/documentation/ISP/ISP-20162.pdf#ISP_platforms_devonly)
Yes, you need to use Suse kit.
Locale enuw has RAW translation table for reading from files. Some other locales, for example rusw, has UTF8 translation table.
So when reading UTF8 in enuw locale you need to specify translation table explicitly. Or have locale with default file translation table UTF8.
Thank you Stephen, that helps a lot.
You have valueColumn defined: valueColumn="ID" "Each time the table is refreshed, in each row Zen tests this logical value against the actual value that appears in the valueColumn in that row. Zen selects any row(s) that contain value in valueColumn" http://docs.intersystems.com/cache20162/csp/docbook/DocBook.UI.Page.cls?KEY=GZCP_tables#GZCP_table_selection
However no ID column in query. So value of every row is empty string, that matches value of table for every row, so last row is hightlighted.
You need either remove valueColumn="ID" or add ID column to query.
Regards, Alexander.
Great!
Thanks.
803U means that installation is Unicode.
What locale do you have? You can check it in Management Portal -> System Administration -> Configuration -> National Language Settings -> Locale Definitions.
Please double-check that file is indeed in UTF-8 format.
Can you reproduce this problem with small file? For example, create small text file with just three symbols: ščž Save it in UTF-8 And read it as above in my example. Does it work?
Hi Stephen.
Can you please provide small complete standalone example, that we can run in SAMPLES namespace to reproduce the behaviour you see.
Thank you, Alexander.
Natasha,
we need much more details.
What exactly did you tried? How do you import data? What's the source of the data? What do you mean by "nothing works"?
What version of Caché do you have (exact $zv)? What locale this instance have?
I have no problems importing this data from UTF-8 file.
USER>set f = ##class(%Stream.FileCharacter).%New()
USER>write f.LinkToFile("c:\temp\demo.txt")
1
USER>set line = f.Read()
USER>write line
ščž
Also, please see http://blog.intersystems.com/compatibility/2014/08/25/deprecation-and-plans-for-current-java-apis-in-2014-2/
Atelier does not support servers on VMS (https://download.intersystems.com/download/atelier.csp)
Webterminal is web-application.
In web-application settings you can specify resource that user require to have to use that application.
Then you can grant this resource to users that are allowed to use this web-application; webterminal in this case.
I would look into some kind of string distance measures. For example, Levenshtein distance.
$Replace ?
Hi Dan.
I've just repeated Allesandro's steps on 2016.2.1 and got the same results as he.
With the exception that screenshots for PTD and LYPTD showing usage of ISNULL function, whereas you should use just %OR(...) expressions that are written before screenshot.
Here is the MDX I've got:
WITH MEMBER [DateOfSale].[PTD] AS '%OR(PERIODSTODATE([DateOfSale].[Actual].[$variable.Period], [DateOfSale].[Actual].[DaySold].&[NOW]))'
MEMBER [DateOfSale].[LYPTD] AS '%OR(PERIODSTODATE([DateOfSale].[Actual].[$variable.Period], PARALLELPERIOD([DateOfSale].[Actual].[YearSold], 1, [DateOfSale].[Actual].[DaySold].&[NOW])))'
SELECT NON EMPTY NONEMPTYCROSSJOIN([Measures].[%COUNT],
{[DATEOFSALE].[PTD],[DATEOFSALE].[LYPTD]}) ON 0,
NON EMPTY [Product].[P1].[Product Category].Members ON 1
FROM [HOLEFOODS]
Alexander.
Dan, please see following post https://community.intersystems.com/post/cannot-start-atelier-java-was-started-returned-exit-code-13
It might help
Please note that is project is a simple prototype and far far far away from any production use.
Maybe just tools?
Do you think there will be other tools mentioned on Community other than tools for developers?
Is this what you want?
Hi Ryan.
For each level there is Sort option in Architect's right pane.
For numbers you should set it to 'asc numeric' or 'desc numeric'.
Albert, notice comma after last END in the query:
THEN 400 END, WHERE
Albert, please provide error that you receive when you try to run that query