2009-07-09 12 views
5

मुझे इस कोड का सामना करना पड़ा है ... क्या यह Pl/Sql है? आप क्या सोचते हैं की यह क्या है?क्या यह कोड Pl/Sql में लिखा गया है, और यदि नहीं, तो यह कौन सी भाषा है?

[Script 1.0] 

    script package up is 
    import native def_1; 

    procedure p(

    i_g text 
    ) 
    is 

    l_txt text; 
    begin 



     with mem_m(idx) as msg do 
     with book_aud(evt_id) as book do 
      book.upd_pkt(
      evt_nr => i__nr 
      ,ref_nr => msg.h.id 
      ,account_nr => msg.h.id 
      ,status => '1' 
     ); 
     end with; 
     end with; 

    end p; 

मैं आयात और अंत से आश्चर्यचकित हूं;

यह पूरा कोड नहीं है। यह इसके संस्करण को कम कर दिया गया है। यह भी इस तरह के रूप परिचित तत्वों का समावेश है:

c_max constant number := 95; 
    c_VE_BA constant text := 'A07000'; 
    -- comment 

    if i_mt is null then 
    return rpad('/',16); 
    else 
    if i_id = zconst_.c_JPY then 
    l_fmt := '9999999999999999'; 
    else 
    l_fmt := '9999999999999D99'; 
    end if; 
    end if; 

case i_typ_id 
when def_typ.contr then 
l_zuonr := zfx2.c_avqt; 
when def_typ.fx then 
l_zuonr := zfx2.c_avqd; 
when def_typ.fxswap then 
l_zuonr := zfx2.c_avqd; 
when def_typ.forex then 
l_zuonr := zfx2.c_avqd; 
when def_typ.xfer then 
l_zuonr := zfx2.c_avqd; 
when def_typ.intr then 
l_zuonr := zfx2.c_avqt; 
else 
assert(false,'Meta Typ'); 
end case; 

यह PL/SQL का एक विस्तार की तरह दिखता है। प्रतिक्रियाओं और अपने स्वयं के शोध के आधार पर, मुझे लगता है कि यह Avaloq + PL/Sql है। मैंने Avaloq से संपर्क किया, मैं अभी भी आधिकारिक उत्तर की प्रतीक्षा कर रहा हूँ।

+0

क्या आप स्रोत से लिंक कर सकते हैं? – FerranB

+0

यह मेरे लिए पीएल/एसक्यूएल की तरह नहीं दिखता है। पीएल/एसक्यूएल के साथ आम बातों में एकमात्र चीजें जो मैं यहां देखता हूं वह है "शुरू करें" – Powerlord

+0

मैं इसे लिंक नहीं कर सकता। मैंने जो उचित समझा वह निकाला। – Aftershock

उत्तर

0

एकमात्र भाषा जिसे मैं ऑफहैंड के बारे में सोच सकता हूं जिसमें "with...end with" वाक्यविन्यास दृश्य मूल है। क्या यह वीबी का कुछ स्क्रिप्टिंग फॉर्म हो सकता है?

+0

संभावना नहीं है, जब तक असाइनमेंट नहीं है: = विजुअल बेसिक – Aftershock

11

यह Avaloq स्क्रिप्ट का उपयोग करता है, जो स्विस बैंकों द्वारा उपयोग किया जाता है, और इसके दौरान ऑनलाइन बहुत कम है, मुझे grammar मिला जो आपके नमूने में पूरी तरह से शर्तों से मेल खाता है।

Avaloq स्क्रिप्ट, Avaloq बैंकिंग प्रणाली की पटकथा भाषा, विशिष्ट व्यवसाय तर्क में प्रवेश की सुविधा। डेटा की संरचना Avaloq स्क्रिप्ट के माध्यम से उपयोग की जा सकती है डीडीआईसी (डेटा डिक्शनरी), में परिभाषित किया गया है जो डेटा को स्टोरेज संरचना जानने के लिए अनावश्यक बनाता है।

1

मुझे यकीन है कि PL/SQL नहीं है।

मुझे पता है कि यह सीधे आपके प्रश्न का उत्तर नहीं देता है लेकिन मैं सुझाव दे सकता हूं कि आप सूची here पर जाएं। यह हो सकता है यहां सूचीबद्ध किया जा सकता है। विभिन्न प्रोग्रामिंग भाषाओं में कार्यक्रमों के कई उदाहरण हैं। भाषा को 100% की पहचान करना मुश्किल हो सकता है जब तक कि कोई इसे पहचानने के लिए न हो और भाषा को साबित करने के लिए "उंगली प्रिंट" पाता हो ... क्या आपके पास अधिक उदाहरण हैं जो आप पोस्ट कर सकते हैं?

http://www.ntecs.de/old-hp/uu9r/lang/html/lang.en.html

मुझे नहीं लगता कि एक कार्यात्मक भाषा है। यह जानने से आपकी खोज को कम करने में मदद मिल सकती है।

+0

में Avaloq स्क्रिप्ट उस सूची पर नहीं है :) – crb

+0

मैंने सूची नहीं बनाई है। बस भाषा की पहचान करने के लिए एक विधि का सुझाव। –

6

हाँ यह avaloq स्क्रिप्ट है। इसका कुछ प्रकार का पीएल/एसक्यूएल प्री कंपाइलर है, आपको एस # अप नामक पैकेज ढूंढने में सक्षम होना चाहिए जहां असली पीएल/एसक्यूएल कोड रहता है।

5

यह निश्चित रूप से Avaloq स्क्रिप्ट है। कोड स्निपेट एक स्क्रिप्ट पैकेज है जो Avaloq संकलक पीएल/एसक्यूएल में संकलित करता है। Avaloq स्क्रिप्ट का बिंदु प्रत्यक्ष डेटाबेस पहुंच को अस्वीकार करना और Avaloq उत्पाद के customizer के बजाय Avaloq API का उपयोग करने के लिए है। एपीआई Avaloq स्क्रिप्ट भाषा है और अन्य तरीकों की एक पूरी श्रृंखला है जैसे नियमों को सेट करने के लिए नियम सारणी सेट करना या फॉर्म, रिपोर्ट, वर्कफ़्लो इत्यादि को परिभाषित करने के लिए विशेष वाक्यविन्यास आदि। अक्सर अन्य प्रकार के स्रोतों में Avaloq स्क्रिप्ट के स्निपेट की इजाजत देता है।

Avaloq स्क्रिप्ट में कई पीएल/एसक्यूएल तत्व हैं लेकिन कुछ वीबी भाषा अवधारणाएं भी मिल सकती हैं। कोड में कुछ विचार देने के लिए कोड में कुछ टिप्पणियां दी गई हैं।

[Script 1.0]      -- Have not seen other than 1.0 version 

script package up is    -- The PL/SQL package name is going to be s#up 
import native def_1;    -- import native means a PL/SQL package named 
            -- def_1 can be used, without native it is 
            -- another Avaloq script package 

procedure p(     -- declares a procedure with the name "p" 

i_g text       -- input variable i_g defined text. 
            -- in PL/SQL this becomes a VARCHAR2 
) 
is 

l_txt text;      -- local variable VARCHAR2(4000) in PL/SQL 
begin 



    with mem_m(idx) as msg do  -- mem_m is a DDIC (Data Dictionary) 
            -- It actually is a kind of "class" with 
            -- fields and methods 
            -- "with" is like in VB to avoid writing 
            -- mem_m(idx) all the time e.g. mem_m(idx).h.id 
    with book_aud(evt_id) as book do -- book_aud is another DDIC that it is not 
             -- prefixed with mem implies this is not a 
             -- in memory structure but direct access 
             -- to a Oracle table book_aud with index 
             -- evt_id which looks undefined to me and 
             -- should bring a compiler error 
     book.upd_pkt(     -- method call in the book_aud DDIC 
     evt_nr => i__nr     -- like in PL/SQL named parameters 
     ,ref_nr => msg.h.id 
     ,account_nr => msg.h.id 
     ,status => '1' 
    ); 
    end with; 
    end with; 

end p; 

मैं भी ऊपर अन्य कोड स्निपेट पर टिप्पणी सकता है, लेकिन मुझे लगता है कि आप पहले से ही सामान्य अवधारणा बाहर निकलना। न तो mem_m और न ही book_aud Avaloq संस्करण में एक ज्ञात डीडीआईसी है जिसके साथ मैं काम कर रहा हूं, आश्चर्य कीजिए कि आप इसे कहां से प्राप्त कर चुके हैं। चूंकि आपकी पोस्ट कई साल पुरानी है, मुझे लगता है कि यह एक बहुत पुराना Avaloq रिलीज था।

संबंधित मुद्दे