Determining Code Structure
Does anybody know if there is a way to determine the code structure (variables, statements, loops) of a pl/sql program unit (package, function, procedure, etc)?
There are some code editors (e.g. PL/SQL developer) that makes avaliable a code structure window and a conventional code editor window. These windows are usually connected, so when you cilck on an item of the code structure window, the matching lines on the code editor window are highlighted.
How does those kind of code editors determine the structure of a program unit? Do they have a client-side parser to read and analyze source code. Is there any Oracle API to get this information?
Edited by: user630459 on 12/05/2009 05:10
Edited by: user630459 on 12/05/2009 05:13
Edited by: user630459 on 12/05/2009 06:05
Edited by: user630459 on 12/05/2009 06:06
Thanks, but unfortunetaly we use Oracle 10g Release 2. Since there aren't other options, I think I'll have to parse source code. I'm going to use an automatic paser generator (e.g. ANTRL framework) to save me from language processing stuff. Do you kown where I could find the PL/SQL Grammar?
Edited by: user630459 on 12/05/2009 10:35
Edited by: user630459 on 12/05/2009 10:36
Edited by: user630459 on 12/05/2009 12:56
Edited by: fadc80 on 13/05/2009 04:38
Edited by: fadc80 on 13/05/2009 04:56
Similar Messages
-
Hi Experts,
There is an issue I am facing while creating BBP, the slices in table DFKKMOP are having another tax determination code being picked up along with the right tax detemination code.
E.g. -> In EK02 for the BBP I have configured tax determination code ZA for main 0051 and sub 0050 for all the company codes, but it is also picking ZX which I have configured for main 100 - sub 202,203 , main - 200 sub 202,203 , main 300- sub 202,203.
Strangely In the table DFKKMOP the tax determination code ZX is coming in the line which has main 0051 and sub 0050.
I dont understand why ZX is being shown in the field BB grouping - Budget Billing: Grouping Key for Tax Determination Code.
I have double checked the customizing in EK02 and I dont find this tax determination code being defined for main 0051/sub 0050, then why is it being picked up for BBP line item in table DFKKMOP.
Any suggestions are appreciated.Well the issue was during creation of BBP items in DFKKMOP the VAT corresponding to Main/Sub 100/ 3xx was being picked up and when I adapted the tax determination code there. The items was created without any split.
For the second one PA issue, well in this case the tax determination in the standard during the creation of PA invoice via EA27 is happening on the date of execution and not on the selection date or posting date. This is because in SPRO the config. of invoicing <<Define Basic Settings for Invoicing>>
has <<Date type for tax determination in Invoicing for Part. Bills.>> set to <<tax determination in invoicing based on entry date>> that is why it takes the execution date into consideration.So even when we do a posting for SOLLDAT in future to take another tax code it doesnt take that SOLLDAT instead takes todays execution date for which the new tax code is not valid.
To overcome this issue either we need to make the new tax code valid from date in past ie. before the date of execution or we need to change this parameter in customizing <<Define Basic Settings for Invoicing>> to <<tax determination in invoicing based on Posting date>>.
Voilà! -
How to determine the structure of parameter method in WebServiceDataControl
Hi all ,
I have a web Service Data Control ,this data control has web service method that take a parameter of type (java.lang.Object)
how can I determine the structure of this object to send it to the web service method
(how can create the object that satisfy the object parameter of web service data control)I can see the constructor of data control which contain (name,age)
but I don't know how can I send these two parameter in one object that satisfy the type of object in the web service method
"parameterObject" : contain (name and age) values . (I don't know the type of "parameterObject" in web service)
Map params = operationBinding.getParamsMap();
params.put("arg0", parameterObject); -
DB Tab RFCDES: Could not determine code page
Hello,
I have a simple scenario File->XI->IDOC(orders05)
The R/3 who receive the IDOC is an 46c system. When sending a file to the XI I receive the following error message in sxmb_moni on the last step "Call Adapter"
DB Tab RFCDES: Could not determine code page with <myr3>
Does anyone have an idea whats wrong ?
Regards BerndHi Bernd,
did you have a look at SAP notes for idoc adapter code page problems? : 747322, 804570
Regards,
michal -
"Could not determine code page" inbound side error
Guys,
We are receiving a flat text file and sending an IDoc, but now I'm getting this error.
Any idea what's wrong?
And what is that "I::000" in the message?
Any help is much appreciated.
Thanks a lot,
Viktor
<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
- <!-- Call Adapter
-->
- <SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30"
xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/"
SOAP:mustUnderstand="">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_METADATA</SAP:Code>
<SAP:P1>FM NLS_GET_LANGU_CP_TAB: Could not determine code page
with TABWDV100 I::000 FM NLS_GET_LANGU_CP_TAB</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Error: FM NLS_GET_LANGU_CP_TAB: Could not
determine code page with TABWDV100 I::000
FM LS_GET_LANGU_CP_TAB</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
PS:By the way, super sorry if this is a duplicate, my first post didn't show up,
not sure what I messed up...Hi All,
I have a similar problem, But with a small variation in the Log.
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="IDOC_ADAPTER"><b>ATTRIBUTE_IDOC_RUNTIME</b></SAP:Code>
<SAP:P1>FM NLS_GET_LANGU_CP_TAB: Could not determine code page with PSRCLNT310 I::000 FM NLS_GET_LANGU_CP_TAB</SAP:P1>
<SAP:P2 />
<SAP:P3 />
It says the "ATTRIBUTE_IDOC_RUNTIME", And I have checked all possible related threads and made my settings in synch. Did anyone had a similar problem? -
Could not determine code page Error in remote sys in XI
Hi,
When we try to send some IDOCS from ECC 5.0 sys to 4.6C sys via XI (M70) we are encountering below issue.
<SAP:Error xmlns:SAP="http://sap.com/xi/XI/Message/30" xmlns:SOAP="http://schemas.xmlsoap.org/soap/envelope/" SOAP:mustUnderstand="">
<SAP:Category>XIAdapter</SAP:Category>
<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_METADATA</SAP:Code>
<SAP:P1>FM NLS_GET_LANGU_CP_TAB: Could not determine code page with XXXXX system I::000 FM NLS_GET_LANGU_CP_TAB</SAP:P1>
<SAP:P2 />
<SAP:P3 />
<SAP:P4 />
<SAP:AdditionalText />
<SAP:ApplicationFaultMessage namespace="" />
<SAP:Stack>Error: FM NLS_GET_LANGU_CP_TAB: Could not determine code page with XXXX I::000 FM NLS_GET_LANGU_CP_TAB</SAP:Stack>
<SAP:Retry>M</SAP:Retry>
</SAP:Error>
When i checked table TCPDB is empty in 4.6 C system. Does it ring any bells guyz....
Regards
VishHi,
Check out this thread
"Could not determine code page" inbound side error
XI IDOC Error...
Thanks,
Prakash
Message was edited by: Prakash Arunachalam -
Hi guys,
well we have strange problem with code page. Scenario is IDoc2IDoc.
We receive IDoc from french-system and when IDoc comes in, we get following error:
<SAP:Code area="IDOC_ADAPTER">ATTRIBUTE_IDOC_RUNTIME</SAP:Code>
<SAP:P1>FM NLS_GET_LANGU_CP_TAB: Could not determine code page with E01CLNT100 I::000 FM NLS_GET_LANGU_CP_TAB</SAP:P1>
Does someone has experience with this?!
brCan somebody help me with this?! in RFC-Dest. we thought to use MDMP but with no success.
Could it be that this depends on user-permissions of the RFC-User in target system?! What permissions are needed for this?!
br -
Compile class file, check for code structure quality
now i am trying to develop a system for my college final year project..the main function is to help the lecturer to mark the student java assignment
any way to compile the java file..just to check for the error? if got error then 0 mark..no error got mark..and then check for the code structure and so...base on that ..to decide the student mark..like if good structure 20 mark..bad? 5 mark and so.
is it possible to do so?
Junit?
any sample?Checking for errors is easy, just write a script to check if javac completed successfully. You can use similar approaches (possibly needing to parse the output) for jlint/PMD/whatever to check code structure. If there's any custom checks you want to do, though, I suggest you grab a parser (possibly witgh semantic analysis; I've found the Eclipse one is rather easily extracted and is good for this stuff) and write manual checks. It might be easier to write PMD rules, but you won't have the flexibility.
-
Dear gurus
We are going for upgradation from 4.7E to ECC 6.0, in this we would like to convert GL Code structure(6 digit) to 8 digit Structure.
Is it possible in ECC 6.0, if so, what r the consequence generally face.
Can we create new GL Structure and can be transferred from 6 digit structure to 8 digit GL Code strucutre
regardsHi,
I give below my views :
The chart of Account will hold upto 10 digits.
You have to change the interval in OBD4 if you have given only 6 digit for accounts groups.
The transaction data with old GL account numbers cannot be changed.
The financial statement version derived so will have two accounts with same description.
All the automatic account assignment has to be changed with new numbers.
All the primary cost element numbers and the relative assignments in CO area has to be changed.
The cut off date can be fixed as 31.03.2010 to enable you to take the balance sheet with old gl
account numbers and thereafter upload the balances in new version is preferred.
Regards,
Sadashivan -
Determining Source Structure u0096 for LSMW to upload Purchasing Info records?
I am trying to use program RM06IBI0 through LSMW to upload Purchasing Info records. While configuring LSMW, how do I determine the source structure? Can anybody please help me with an example?
Thanks,
Ketanhi dear
first of all record all the fields which you require through shdb including your vendor code and esokz.
now
generate a structure for mapping the fields through table maintainence generator option.you can add any number of fields there.
actully this must include all the fields which are being fetched from the your flat file.
please revert back if u find problem.
reward points if it find useful
regards
amit singla -
Partner Determination/Organization Structure
Hi,
I wanted to understand how through partner determination procedure relevant Service Team can be assigned. You can use example of Standard Service Order Transaction SRVO, Standard Partner Determination Procedure 00006, Standard Access Sequence 011 Executing Service Organization, Standard Organization determination rule 1000278 and organization structure 50004983 to explain the connection.
Thanks
DeepakHi Deepak,
The description of rule 10000278 says,"
This rule should be used for partner determination via the orgdata model.
It delivers on the basis of orgattribute <H>executing
service organizations</>
It is intended
- for partner determination at item level
- for service items
- when using products in the service item
Executing service organizations are all
in the orgdata model with the following characteristics:
- Service Scenario
- Indicator for executing service organization is set.
These partners are filed as partners of the partner function
category executing service organization in the
transaction.
For example, org data determination is set up in the container after
the postal code and product.
regards,
Prashant
<b>"please REWARD the points "</b> if it helps..!! -
Best practice for code structure to control multiple devices in a 2 stage-sequ​ence
I have a question about code architecture and getting multiple devices controlled and sychronized for one experiment. This is an "architecture"-type inquiry, so I am hoping for some suggestions on how to proceed.
I run an experiment in which I control 2 NI PCI-6733. I am soon to add a Tektronix AFG 3022B, and have long been putting off an opportunity to rewrite my labview code from the ground up. I inherited it from an earlier research, and while functional, I would like to make it easier to modify and break up into subVi's and such. Link to the current program (labview 8.6.1) is here if you would like to see the code that is currently used, and the subvi's are in a zip file. The current version of the experiment consists of just one stage, all the writing of the data to the PCI cards is saved for the end. I need to change this in my new setup though.
The new experiment consists of 2 stages. The first will run (looping an output array to the PCI cards) until it hears a "true" from another computer (connected via TCP). At that point, it should switch to stage 2 and run a sequence (usually 10^5 timeunits in length, where the time unit is 0.1 ms) that outputs to the two PCI cards, the AFG 3022B, and with the flexibility to add more devices in the future.
Most appreciated would be structural advice. How to arrange the VIs, if it's good to use a "master" VI that would control the two subVi's of stage 1 and 2, etc... Feel free to ask for more details if it would help clarify my question. Thanks!
Solved!
Go to Solution.Programs of this type usually use a state machine of some sort. You can find many tutorials on LabVIEW state machines in these forums or the LAVA forums. If you are doing a rewrite, I would also recommend you consider LabVIEW classes. They help modularize your code and make the subparts more reuseable. You may end up with less to maintain, as a result.
<shamelessPlug>You may also want to consider TestStand. It was designed to run sequences of tests, so may make your life easier. It could also be gross overkill.</shamelessPlug>
Let us know if you run into issues with state machines or classes.
This account is no longer active. Contact ShadesOfGray for current posts and information. -
Best practices code structure for large projects?
Hi, I come from the Java world where organizing your code is handled conveniently through packages. Is there an equivalent in XCode/Objective C? I'd rather not lump all my observers, entities, controllers, etc in one place under "Classes"...or maybe it doesn't matter...
If anyone could point me to a document outlining recommended guidelines I'd appreciate it.
Thanks! JonIf you have a small project, you can setup Groups in Xcode to logically organize your files. Those Groups do not necessarily have to correspond to any directory structure. I have all my source files in one directory but organize them into Groups in Xcode.
If you have a larger project, you can do the same thing, but with code organized into actual directories. Groups can be defined to be relative to a particular directory.
If really do have a large project, you should organize things the same was as in Java. Your "packages" would just be libraries - either static or dynamic.
As far as official guidelines go, there really aren't any. It would be best to stick to the Cocoa Model-View-Controller architecture if that is the type of application you are working on. For other software, you can do it however you want, including following something like Sun's guidelines if you want. -
Hi,
In my applet code below the section between the two lines of //// in the paint method doesn't need to be re-done every time I redraw just once will do fine. But when I try to move it into the start method it wont complie because the variables are not public/can't be resolved.
So how do I move this section of code to somewhere more efficent and not get the errors?
Thanks for any suggestions.
Ann
(I trimed a lot of detail out to make it easyer to see the structure I hope)
public class ArrayExpApplet extends Applet
implements ItemListener {
public void init() {
System.out.println("initiating...");
setBackground(new Color(224, 238, 238));;
public void start() {
System.out.println("starting...");
Panel canvasPanel = new Panel();
Canvas graph = new Canvas();
JPanel cbp = CheckBoxPanel();
setLayout(new BorderLayout());
canvasPanel.setLayout(new BoxLayout(canvasPanel, BoxLayout.LINE_AXIS));
canvasPanel.add(graph);
canvasPanel.add(cbp);
add("East", canvasPanel);
public JPanel CheckBoxPanel() {
//Create the check boxes.
return (p);
// add a checkbox listener
public void itemStateChanged(ItemEvent event) {
repaint();
public void paint(Graphics g) {
System.out.println("Paint");
double[][] expLevels = new double[4][5];
String array_str = this.getParameter("array_string");
System.out.println("array_string "+array_str);
String[] rows = array_str.split (";");
for (int k = 0; k < rows.length; k++) {
System.out.println("row "+k+" = "+rows[k]);
String[] cols = rows[k].split (",");
for (int l = 0; l < cols.length; l++) {
System.out.println("col "+l+" = "+cols[l]);
expLevels[k][l]= Double.parseDouble(cols[l]);
//find max expression to scale y axis
double max=0;
for (int i=0; i<4; i++) {
for (int j=0; j<5; j++){
if (expLevels[i][j]>max) {max=expLevels[i][j];}
int originX=100;
int step=100; //distance between exposures on x axis
int height=200;
int originY=height+(originX/2);
double scale=height/(double)max;
//scale=0.5;
//set up an array of 5 colours
Color[] EColor = new Color[5];
EColor[0]= new Color(200,0,255); //magenta
EColor[1]= new Color(0,0,255); //green
EColor[2]= new Color(0,255,0); //blue
EColor[3]= new Color(254,190,0); //yellow
//Draw the data
int x=originX; int y;
for (int i=0; i<4; i++) {
System.out.println("CheckBox "+i+" is "+checkBoxSetting);
if (checkBoxSetting[i]) {
g.setColor(EColor[i]);
for (int j=0; j<4; j++){
y=j+1;
g.drawLine(x,originY-(int)(expLevels[i][j]*scale), x+step, originY-(int)(expLevels[i][y]*scale));
x=x+step;
x=originX;
//draw axis
//lable x axis
//lable y axis
public Dimension getMinimumSize() {return new Dimension(550,300);}
public Dimension getPreferredSize() {return getMinimumSize();}
public void stop() {
System.out.println("stopping...");
public void destroy() {
System.out.println("preparing to unload...");This is what init() is for.
import java.applet.Applet;
import java.awt.BorderLayout;
import java.awt.Canvas;
import java.awt.Color;
import java.awt.Dimension;
import java.awt.Graphics;
import java.awt.Panel;
import java.awt.event.ItemEvent;
import java.awt.event.ItemListener;
import javax.swing.BoxLayout;
import javax.swing.JPanel;
public class ArrayExpApplet extends Applet
implements ItemListener {
private double[][] expLevels = new double[4][5];
private Color[] EColor = new Color[5];
private int originX=100;
private int step=100; //distance between exposures on x axis
private int height=200;
private int originY=height+(originX/2);
private double scale=-1;
public void init() {
System.out.println("initiating...");
setBackground(new Color(224, 238, 238));;
String array_str = this.getParameter("array_string");
System.out.println("array_string "+array_str);
String[] rows = array_str.split (";");
for (int k = 0; k < rows.length; k++) {
System.out.println("row "+k+" = "+rows[k]);
String[] cols = rows[k].split (",");
for (int l = 0; l < cols.length; l++) {
System.out.println("col "+l+" = "+cols[l]);
expLevels[k][l]= Double.parseDouble(cols[l]);
//find max expression to scale y axis
double max=0;
for (int i=0; i<4; i++) {
for (int j=0; j<5; j++){
if (expLevels[i][j]>max) {max=expLevels[i][j];}
scale=height/(double)max;
//set up an array of 5 colours
EColor[0]= new Color(200,0,255); //magenta
EColor[1]= new Color(0,0,255); //green
EColor[2]= new Color(0,255,0); //blue
EColor[3]= new Color(254,190,0); //yellow
public void start() {
System.out.println("starting...");
Panel canvasPanel = new Panel();
Canvas graph = new Canvas();
JPanel cbp = CheckBoxPanel();
setLayout(new BorderLayout());
canvasPanel.setLayout(new BoxLayout(canvasPanel, BoxLayout.LINE_AXIS));
canvasPanel.add(graph);
canvasPanel.add(cbp);
add("East", canvasPanel);
public JPanel CheckBoxPanel() {
//Create the check boxes.
return (p);
// add a checkbox listener
public void itemStateChanged(ItemEvent event) {
repaint();
public void paint(Graphics g) {
System.out.println("Paint");
//Draw the data
int x=originX; int y;
for (int i=0; i<4; i++) {
System.out.println("CheckBox "+i+" is "+checkBoxSetting);
if (checkBoxSetting[i]) {
g.setColor(EColor[i]);
for (int j=0; j<4; j++){
y=j+1;
g.drawLine(x,originY-(int)(expLevels[i][j]*scale), x+step, originY-(int)(expLevels[i][y]*scale));
x=x+step;
x=originX;
//draw axis
//lable x axis
//lable y axis
public Dimension getMinimumSize() {return new Dimension(550,300);}
public Dimension getPreferredSize() {return getMinimumSize();}
public void stop() {
System.out.println("stopping...");
public void destroy() {
System.out.println("preparing to unload..."); -
Is my code structure correct.
This is a question about OOPs structure for an AIR
application using flex 3 and actionscript3 without flex builder
(IDE is eclipse with AXDT and ant). I am new to forums so redirect
me if appropriate:
The data maintenance will occur on an infrequent basis. Is
this a good structure to using mxml and AS3?
Note: I know that I can create the data maintenance Panel and
other necessary controls in main.mxml, however I find that a large
mxml file is hard for me to work with.
Thanks in advance for your help and comments.
Dickno this isn't a good structure. Keeping everything in one
mxml is asking the code maintainer to be "punished".
Do this:
1. separate your states into "views", by creating custom
components to represent each states.
2. set up a blank "home view" state. All other states you
have can then use it as reference.
3. to manage states create a "model" (singleton) to handle
the transition from state to state
4. create as3 files specific to each "view" and reference
them in their respective mxml files.
take a look at this link:
http://beingwicked.com/2008/07/flex-initialize-and-the-hassles-of-changing-state/
Maybe you are looking for
-
Using 2009 iMac as second display for 2012 iMac
I am using my 2009 iMac as a second display using a mini display plugged into the 2012 iMac Thunderbolt port. When I plug it in, it works fine, but if I need to restart my 2012 iMac, it won't recognize the second display on reboot. How do I make my
-
i am using iphone5 and when sending sms within 160 characters i am getting 2 sms counts deduction & i hear the message send sound twice. what is wrong here. can some one please help me here??? APPLE need to do something here!!!!!!1
-
Document category PINV not found in customs code list for documents
Hi Experts, I am getting this error in GTS for pro forma invoice in ECC. I saw this message when I looked at log in system monitoring for billing documents - exports/transit. Where I am missing the configuration or master data or something else? I wo
-
Can't combine PDFs in Preview 7.0
I just upgraded to Mavericks last night, and now I'm having an issue with Preview -- I can't use it to combine two PDF documents. The help section says to open the documents you want to combine and set both to thumbnail view, then drag the thumbnail
-
Changing transparency blend space
I have a bunch of InDesign files that were created for print that I now need to save with RGB colors at the behest of my ePub developer. I have a simple script to change my pantone spot swatches to RGB, but I want to add a line to that to change the