Focal Point Banner


As of December 1, 2020, Focal Point is retired and repurposed as a reference repository. We value the wealth of knowledge that's been shared here over the years. You'll continue to have access to this treasure trove of knowledge, for search purposes only.

Join the TIBCO Community
TIBCO Community is a collaborative space for users to share knowledge and support one another in making the best use of TIBCO products and services. There are several TIBCO WebFOCUS resources in the community.

  • From the Home page, select Predict: WebFOCUS to view articles, questions, and trending articles.
  • Select Products from the top navigation bar, scroll, and then select the TIBCO WebFOCUS product page to view product overview, articles, and discussions.
  • Request access to the private WebFOCUS User Group (login required) to network with fellow members.

Former myibi community members should have received an email on 8/3/22 to activate their user accounts to join the community. Check your Spam folder for the email. Please get in touch with us at community@tibco.com for further assistance. Reference the community FAQ to learn more about the community.


Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [CLOSED] Unescaped quotes in FORMAT JSON

Read-Only Read-Only Topic
Go
Search
Notify
Tools
[CLOSED] Unescaped quotes in FORMAT JSON
 Login/Join
 
Virtuoso
posted
There's probably some setting to escape these, but there appears to be absolutely zero documentation on HOLD FORMAT JSON.

Here's the issue:
TABLE FILE CAR
SUM
     COMPUTE OUCH/A20 = 'A "quote"!';
BY  COUNTRY
ON TABLE PCHOLD FORMAT JSON
END


This returns JSON:
{ "records" : [
{ "COUNTRY" : "ENGLAND","OUCH" : "A "quote"!" }
,
{ "COUNTRY" : "FRANCE","OUCH" : "A "quote"!" }
,
{ "COUNTRY" : "ITALY","OUCH" : "A "quote"!" }
,
{ "COUNTRY" : "JAPAN","OUCH" : "A "quote"!" }
,
{ "COUNTRY" : "W GERMANY","OUCH" : "A "quote"!" }
] }


The quotes in the COMPUTE don't get escaped! Invalid JSON is the result.
Unfortunately, we have some data that contains double-quotes in descriptions (not so strange for a tyre company; wheel sizes are usually expressed in inches!).

For XML formats, we can enable SET HTMLENCODE ON. Is there a similar setting for JSON?

This message has been edited. Last edited by: FP Mod Chuck,


WebFOCUS 8.1.03, Windows 7-64/2008-64, IBM DB2/400, Oracle 11g & RDB, MS SQL-Server 2005, SAP, PostgreSQL 11, Output: HTML, PDF, Excel 2010
: Member of User Group Benelux :
 
Posts: 1669 | Location: Enschede, Netherlands | Registered: August 12, 2010Report This Post
Platinum Member
posted Hide Post
This is what you want. Right?

{"records" : [
{"COUNTRY" : "ENGLAND","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "FRANCE","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "ITALY","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "JAPAN","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "W GERMANY","OUCH" : "A \"quote\"!"}
]}

The Escaping special characters functionality was put in WebFOCUS 8203 (DM 7708).

Efrem
 
Posts: 229 | Location: New York | Registered: July 27, 2004Report This Post
Expert
posted Hide Post
You will probably have to use something like STRREP to replace " with \" before the data is returned.


Waz...

Prod:WebFOCUS 7.6.10/8.1.04Upgrade:WebFOCUS 8.2.07OS:LinuxOutputs:HTML, PDF, Excel, PPT
In Focus since 1984
Pity the lost knowledge of an old programmer!

 
Posts: 6349 | Location: 33°49'23.0"S, 151°11'41.0"E | Registered: October 31, 2006Report This Post
Master
posted Hide Post
So, I replaced the PCHOLD with HOLD and saved the output to the baseapp folder:
  
TABLE FILE CAR
SUM
     COMPUTE OUCH/A20 = 'A "quote"!';
BY  COUNTRY
ON TABLE HOLD AS baseapp/_json FORMAT JSON
END


When I opened the json file with a text editor (since AppStudio can't open it) It has the properly escaped double quotes:
  
{"records" : [
{"COUNTRY" : "ENGLAND","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "FRANCE","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "ITALY","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "JAPAN","OUCH" : "A \"quote\"!"}
,
{"COUNTRY" : "W GERMANY","OUCH" : "A \"quote\"!"}
]}


I am on version 8202M, so maybe that is a bug in your 8.1.03 version. I would submit a ticket.


Hallway

 
Prod: 8202M1
Test: 8202M4
Repository:
 
OS:
 
Outputs:
 
 
 
 
 
Posts: 608 | Location: Salt Lake City, UT, USA | Registered: November 18, 2015Report This Post
Master
posted Hide Post
This works for an HTML output as well:
  
TABLE FILE CAR
SUM
     COMPUTE OUCH/A20 = 'A "quote"!';
BY  COUNTRY
ON TABLE HOLD FORMAT JSON
END

-HTMLFORM BEGIN NOEVAL
<pre>
!IBI.FIL.HOLD;
</pre>
-HTMLFORM END


Try changing the PCHOLD to HOLD and see if that makes a difference.


Hallway

 
Prod: 8202M1
Test: 8202M4
Repository:
 
OS:
 
Outputs:
 
 
 
 
 
Posts: 608 | Location: Salt Lake City, UT, USA | Registered: November 18, 2015Report This Post
Master
posted Hide Post
Hi Wep,

I didn't even know JSON was an option. ( but we still on 8.009 ).

I've tested your code on our to-be-environment ( 8203 ) there it works fine.

I do get escaped output:

snippet:
{"records" : [{"COUNTRY" : "ENGLAND","OUCH" : "A \"quote\"!"},{"COUNTRY" : "FRANCE","OUCH" : "A \"quote\"!"},{"


might be a 'know-to-some' bug that's been fixed in ( at least ) 8203.

Greets,
Dave


_____________________
WF: 8.0.0.9 > going 8.2.0.5
 
Posts: 668 | Location: Veghel, The Netherlands | Registered: February 16, 2010Report This Post
Virtuoso
posted Hide Post
Thanks for confirming this fixed in 82.

This means that the 8103 JSON implementation has several issues that I know of:

  • Single item results have mismatching accolade pairs
  • Double-quotes in strings are not escaped
  • There is no documentation


Bit of a mess...


WebFOCUS 8.1.03, Windows 7-64/2008-64, IBM DB2/400, Oracle 11g & RDB, MS SQL-Server 2005, SAP, PostgreSQL 11, Output: HTML, PDF, Excel 2010
: Member of User Group Benelux :
 
Posts: 1669 | Location: Enschede, Netherlands | Registered: August 12, 2010Report This Post
Platinum Member
posted Hide Post
Wep5622,
May I suggest that you open a Hottrack case asking for a Documentation enhancement for HOLD FORMAT JSON.

It could help other users in the future.
 
Posts: 229 | Location: New York | Registered: July 27, 2004Report This Post
  Powered by Social Strata  

Read-Only Read-Only Topic

Focal Point    Focal Point Forums  Hop To Forum Categories  WebFOCUS/FOCUS Forum on Focal Point     [CLOSED] Unescaped quotes in FORMAT JSON

Copyright © 1996-2020 Information Builders