<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic sas parsing in SAS Programming</title>
    <link>https://communities.sas.com/t5/SAS-Programming/sas-parsing/m-p/611221#M178103</link>
    <description>&lt;P&gt;&lt;FONT&gt;this is my file .&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;I want to pars my file but &amp;nbsp;I can't determine the file path correctly.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;my code is working properly&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;" &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;sv&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;totalData&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": Toplam veri adedi,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;total&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": veriler veri adedi,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;totalPage&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": toplam sayfa adedi,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;sayfa&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": aktif sayfa numarası,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;user&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": firma kullanıcılarını ve yetkileri [&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;id&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": "kullanıcı id'si",&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;name&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": "kullanıcı adı",&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;listOfManageCompanies&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": yönetim &lt;STRONG&gt;kurulu&lt;/STRONG&gt; yetkisi olan firmalar&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;şirket&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": [&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "FirmaAdı"&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ]&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;listOfManageAreas&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": &lt;STRONG&gt;site yönetimi&lt;/STRONG&gt; yetkisi olan alanlar&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;alan&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": [&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Tam Yetkili", (bütün alanlara ekleme yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Şikayet Yönetimi", (Şikayet Yönetimi yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Firma Raporu", (Firma Raporu taslağı yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Sektör Raporu", (Sektör Raporu sunmak yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ]&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;FONT&gt;filename cp temp ;&lt;BR /&gt;proc groovy classpath=cp;&lt;BR /&gt;add classpath="C:\Users\trsasadm\AppData\Local\Temp\Temp1_groovy_2.3.7.0_SAS_20141114161537.zip\eclipse\plugins\groovy_2.3.7.0_SAS_20141114161537\groovy-all.jar";&lt;BR /&gt;submit parseonly;&lt;BR /&gt;import groovy.json.JsonSlurper&lt;BR /&gt;class MyJsonParser {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; def parseFile(path) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; def jsonFile = new File("F:\\Sikayetvar_pdt.txt")&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; def jsonText = jsonFile.getText()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; def InputJSON = new JsonSlurper().parseText(jsonText)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; def accounts = {}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InputJSON.sv.each{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;accounts &amp;lt;&amp;lt; [&lt;BR /&gt;&amp;nbsp;&amp;nbsp;totalData : it.totalData&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ]&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return accounts&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;endsubmit;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT&gt;submit parseonly;&lt;BR /&gt;import java.util.ArrayList;&lt;BR /&gt;import java.util.Iterator;&lt;BR /&gt;import java.util.LinkedHashMap;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT&gt;public class MyJsonParser4Sas {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String filename = "F:\\Sikayetvar_pdt.txt";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void init() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyJsonParser myParser = new MyJsonParser();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; accounts = myParser.parseFile(filename);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iter = accounts.iterator();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public boolean hasNext() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return iter.hasNext();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void getNext() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; account = ((LinkedHashMap) (iter.next()));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getString(String k) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return account.get(k);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected ArrayList accounts;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected Iterator iter;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected LinkedHashMap account;&lt;BR /&gt;}&lt;BR /&gt;endsubmit;&lt;BR /&gt;quit;&lt;BR /&gt;options set=classpath "%sysfunc(pathname(cp,f))";&lt;BR /&gt;data accounts;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; attrib i&amp;nbsp; label="i"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; length=&amp;nbsp; 8&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; totalData:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label="totalData" length=$&amp;nbsp; 50&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;;&lt;BR /&gt;&amp;nbsp;dcl javaobj accounts("MyJsonParser4Sas");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.exceptiondescribe(1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.setStringField("filename", "C:\\foo.json");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.callVoidMethod("init");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.callBooleanMethod("hasNext",rc);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; do i=1 by 1 while(rc);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; accounts.callVoidMethod("getNext");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; accounts.callStringMethod("getString", "totalData", totalData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.callBooleanMethod("hasNext",rc);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; drop rc;&lt;BR /&gt;run;&lt;/FONT&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;filename cp temp ; proc groovy classpath=cp; add classpath="C:\Users\trsasadm\AppData\Local\Temp\Temp1_groovy_2.3.7.0_SAS_20141114161537.zip\eclipse\plugins\groovy_2.3.7.0_SAS_20141114161537\groovy-all.jar"; submit parseonly; import groovy.json.JsonSlurper class MyJsonParser { def parseFile(path) { def jsonFile = new File("F:\\Sikayetvar_pdt.txt") def jsonText = jsonFile.getText() def InputJSON = new JsonSlurper().parseText(jsonText) def accounts = [] InputJSON.sv.each{ accounts &amp;lt;&amp;lt; [ totalData : it.totalData ] } return accounts } } endsubmit; submit parseonly; import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedHashMap; public class MyJsonParser4Sas { public String filename = "F:\\Sikayetvar_pdt.txt"; public void init() { MyJsonParser myParser = new MyJsonParser(); accounts = myParser.parseFile(filename); iter = accounts.iterator(); } public boolean hasNext() { return iter.hasNext(); } public void getNext() { account = ((LinkedHashMap) (iter.next())); } public String getString(String k) { return account.get(k); } protected ArrayList accounts; protected Iterator iter; protected LinkedHashMap account; } endsubmit; quit; options set=classpath "%sysfunc(pathname(cp,f))"; data accounts; attrib i label="i" length= 8 totalData: label="totalData" length=$ 50 ; dcl javaobj accounts("MyJsonParser4Sas"); accounts.exceptiondescribe(1); accounts.setStringField("filename", "C:\\foo.json"); accounts.callVoidMethod("init"); accounts.callBooleanMethod("hasNext",rc); do i=1 by 1 while(rc); accounts.callVoidMethod("getNext"); accounts.callStringMethod("getString", "totalData", totalData); output; accounts.callBooleanMethod("hasNext",rc); end; drop rc; run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;PRE&gt;&amp;nbsp;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
    <pubDate>Thu, 12 Dec 2019 07:25:04 GMT</pubDate>
    <dc:creator>gizemetus</dc:creator>
    <dc:date>2019-12-12T07:25:04Z</dc:date>
    <item>
      <title>sas parsing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sas-parsing/m-p/611221#M178103</link>
      <description>&lt;P&gt;&lt;FONT&gt;this is my file .&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;I want to pars my file but &amp;nbsp;I can't determine the file path correctly.&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;my code is working properly&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;" &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;sv&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;totalData&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": Toplam veri adedi,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;total&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": veriler veri adedi,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;totalPage&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": toplam sayfa adedi,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;sayfa&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": aktif sayfa numarası,&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;user&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": firma kullanıcılarını ve yetkileri [&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;id&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": "kullanıcı id'si",&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;name&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": "kullanıcı adı",&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;listOfManageCompanies&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": yönetim &lt;STRONG&gt;kurulu&lt;/STRONG&gt; yetkisi olan firmalar&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;şirket&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": [&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "FirmaAdı"&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ...&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ]&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;listOfManageAreas&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": &lt;STRONG&gt;site yönetimi&lt;/STRONG&gt; yetkisi olan alanlar&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; " &lt;/FONT&gt;&lt;STRONG&gt;&lt;FONT&gt;alan&lt;/FONT&gt;&lt;/STRONG&gt;&lt;FONT&gt; ": [&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Tam Yetkili", (bütün alanlara ekleme yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Şikayet Yönetimi", (Şikayet Yönetimi yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Firma Raporu", (Firma Raporu taslağı yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; "Sektör Raporu", (Sektör Raporu sunmak yetkisi)&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ]&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&lt;FONT&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; },&lt;/FONT&gt;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;DIV&gt;&lt;FONT&gt;filename cp temp ;&lt;BR /&gt;proc groovy classpath=cp;&lt;BR /&gt;add classpath="C:\Users\trsasadm\AppData\Local\Temp\Temp1_groovy_2.3.7.0_SAS_20141114161537.zip\eclipse\plugins\groovy_2.3.7.0_SAS_20141114161537\groovy-all.jar";&lt;BR /&gt;submit parseonly;&lt;BR /&gt;import groovy.json.JsonSlurper&lt;BR /&gt;class MyJsonParser {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; def parseFile(path) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; def jsonFile = new File("F:\\Sikayetvar_pdt.txt")&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; def jsonText = jsonFile.getText()&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; def InputJSON = new JsonSlurper().parseText(jsonText)&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; def accounts = {}&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; InputJSON.sv.each{&lt;BR /&gt;&amp;nbsp;&amp;nbsp;accounts &amp;lt;&amp;lt; [&lt;BR /&gt;&amp;nbsp;&amp;nbsp;totalData : it.totalData&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; ]&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return accounts&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;}&lt;BR /&gt;endsubmit;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT&gt;submit parseonly;&lt;BR /&gt;import java.util.ArrayList;&lt;BR /&gt;import java.util.Iterator;&lt;BR /&gt;import java.util.LinkedHashMap;&lt;/FONT&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;FONT&gt;public class MyJsonParser4Sas {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String filename = "F:\\Sikayetvar_pdt.txt";&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void init() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; MyJsonParser myParser = new MyJsonParser();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; accounts = myParser.parseFile(filename);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; iter = accounts.iterator();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public boolean hasNext() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return iter.hasNext();&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; public void getNext() {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; account = ((LinkedHashMap) (iter.next()));&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; public String getString(String k) {&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return account.get(k);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected ArrayList accounts;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected Iterator iter;&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; protected LinkedHashMap account;&lt;BR /&gt;}&lt;BR /&gt;endsubmit;&lt;BR /&gt;quit;&lt;BR /&gt;options set=classpath "%sysfunc(pathname(cp,f))";&lt;BR /&gt;data accounts;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; attrib i&amp;nbsp; label="i"&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; length=&amp;nbsp; 8&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; totalData:&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; label="totalData" length=$&amp;nbsp; 50&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &amp;nbsp;;&lt;BR /&gt;&amp;nbsp;dcl javaobj accounts("MyJsonParser4Sas");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.exceptiondescribe(1);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.setStringField("filename", "C:\\foo.json");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.callVoidMethod("init");&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.callBooleanMethod("hasNext",rc);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; do i=1 by 1 while(rc);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; accounts.callVoidMethod("getNext");&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; accounts.callStringMethod("getString", "totalData", totalData);&lt;BR /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; output;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; accounts.callBooleanMethod("hasNext",rc);&lt;BR /&gt;&amp;nbsp;&amp;nbsp; end;&lt;BR /&gt;&amp;nbsp;&lt;BR /&gt;&amp;nbsp;&amp;nbsp; drop rc;&lt;BR /&gt;run;&lt;/FONT&gt;&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;PRE&gt;&lt;CODE class=" language-sas"&gt;filename cp temp ; proc groovy classpath=cp; add classpath="C:\Users\trsasadm\AppData\Local\Temp\Temp1_groovy_2.3.7.0_SAS_20141114161537.zip\eclipse\plugins\groovy_2.3.7.0_SAS_20141114161537\groovy-all.jar"; submit parseonly; import groovy.json.JsonSlurper class MyJsonParser { def parseFile(path) { def jsonFile = new File("F:\\Sikayetvar_pdt.txt") def jsonText = jsonFile.getText() def InputJSON = new JsonSlurper().parseText(jsonText) def accounts = [] InputJSON.sv.each{ accounts &amp;lt;&amp;lt; [ totalData : it.totalData ] } return accounts } } endsubmit; submit parseonly; import java.util.ArrayList; import java.util.Iterator; import java.util.LinkedHashMap; public class MyJsonParser4Sas { public String filename = "F:\\Sikayetvar_pdt.txt"; public void init() { MyJsonParser myParser = new MyJsonParser(); accounts = myParser.parseFile(filename); iter = accounts.iterator(); } public boolean hasNext() { return iter.hasNext(); } public void getNext() { account = ((LinkedHashMap) (iter.next())); } public String getString(String k) { return account.get(k); } protected ArrayList accounts; protected Iterator iter; protected LinkedHashMap account; } endsubmit; quit; options set=classpath "%sysfunc(pathname(cp,f))"; data accounts; attrib i label="i" length= 8 totalData: label="totalData" length=$ 50 ; dcl javaobj accounts("MyJsonParser4Sas"); accounts.exceptiondescribe(1); accounts.setStringField("filename", "C:\\foo.json"); accounts.callVoidMethod("init"); accounts.callBooleanMethod("hasNext",rc); do i=1 by 1 while(rc); accounts.callVoidMethod("getNext"); accounts.callStringMethod("getString", "totalData", totalData); output; accounts.callBooleanMethod("hasNext",rc); end; drop rc; run;&lt;/CODE&gt;&lt;/PRE&gt;&lt;PRE&gt;&amp;nbsp;&lt;/PRE&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Thu, 12 Dec 2019 07:25:04 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sas-parsing/m-p/611221#M178103</guid>
      <dc:creator>gizemetus</dc:creator>
      <dc:date>2019-12-12T07:25:04Z</dc:date>
    </item>
    <item>
      <title>Re: sas parsing</title>
      <link>https://communities.sas.com/t5/SAS-Programming/sas-parsing/m-p/611832#M178423</link>
      <description>&lt;P&gt;You point to a file several times.&lt;/P&gt;
&lt;P&gt;Which part fails?&lt;/P&gt;
&lt;P&gt;What message do you get?&lt;/P&gt;</description>
      <pubDate>Sun, 15 Dec 2019 01:40:44 GMT</pubDate>
      <guid>https://communities.sas.com/t5/SAS-Programming/sas-parsing/m-p/611832#M178423</guid>
      <dc:creator>ChrisNZ</dc:creator>
      <dc:date>2019-12-15T01:40:44Z</dc:date>
    </item>
  </channel>
</rss>

