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.

New TIBCO Community Coming Soon
In early summer, TIBCO plans to launch a new community—with a new user experience, enhanced search, and expanded capabilities for member engagement with answers and discussions! In advance of that, the current myibi community will be retired on April 30. We will continue to provide updates here on both the retirement of myibi and the new community launch.

What You Need to Know about Our New Community
We value the wealth of knowledge and engagement shared by community members and hope the new community will continue cultivating networking, knowledge sharing, and discussion.

During the transition period, from April 20th until the new community is launched this summer, myibi users should access the TIBCO WebFOCUS page to engage.


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