Urgent Help Need for the beginner
When trying to bind a object to ldap i am getting the following exception.
javax.naming.NameNotFoundException: [LDAP: error code 32 - No Such Object]; rema
ining name 'cn=aString'
The source code is as follows,the same exception comes even when i try to do a search on the ldap.
Am i missing out anything?
package com.retail.ldap;
import java.util.*;
import javax.naming.*;
import javax.naming.directory.*;
import javax.naming.ldap.*;
public class GateWay {
public GateWay() {
super();
public static void main(java.lang.String[] args) {
Hashtable env = new Hashtable();
env.put(Context.INITIAL_CONTEXT_FACTORY,"com.sun.jndi.ldap.LdapCtxFactory");
env.put(Context.PROVIDER_URL, "ldap://localhost:389");
env.put(Context.SECURITY_AUTHENTICATION,"simple");
System.out.println("1");
try{
DirContext ctx = new InitialDirContext(env);
System.out.println(ctx);
System.out.println("2");
String s=new String();
ctx.bind("cn=aString", s);
System.out.println("3");
catch(Exception e){System.out.println(e);}
Hi,
Try to specify the correct distinguished name to bind method. The distinguished name (the fully qualified name) of an object in Directory is concatenation of its relative name ( in your case "cn=aString" ) and the distinguished name of its container ( "cn=Users,dc=domain1,dc=softvision,dc=ro -- this is my case ). So pass as parameter to bind method a string like: "cn=AString,cn=theContainer,dc=yourDomain,dc=yourCompany,dc=com"
Regards,
Cosmin Petra
Similar Messages
-
Please urgent help needed for the following
Hi Everybody!
I desperately need help as soon as possible.
Following is the partial code for the driver program which will use the Employee class Objects(Employee is declared abstract). If you want to see whole code you can take a look at my last two or three posts in this forum.
1- Now data input by the user in the specific field( name, rate ) should be displayed in the �List� at the top of the frame after pressing �Enter� key. Can anyone help me to achieve this functionality. While doing this keep in mind the capacity of Array
2- I also need �rate� textfield to enabled initially & become disable when �raise� (for trigerring calculating raise in weekly pay) is checked. On this �increased� textbox will become �enabled� which was disabled initially.
3- The stuff which may have the problems is followed by �*******************�.
// here is how I declared handlers
ActionEventHandler handler = new ActionEventHandler();
ItemEventHandler listener = new ItemEventHandler();
// here is the declaration of awt components which are going to be placed on Frame.
public class ActionEventHandler implements ActionListener
public void actionPerformed(ActionEvent event)
//if(event.getSource() == enterButton)
for (int i = 0 ; i < empArray.length; i++)
if(event.getSource() == enterButton)
empData.add(nameField.getText());
/*else if(event.getSource() == hoursField)
calcWeeklyPay();
if(event.getSource() == clearButton)
nameField.setText("");
hoursField.setText("");
rateField.setText("");
increaseField.setText("");
}//else if
}//ActionEventHandler
public class ItemEventHandler implements ItemListener
public void itemStateChanged(ItemEvent event)
//if(event.getSource() == enterButton)
if(hEmployee.getState())
createHourly();
}//if
/*else
sEmployee.setState(true);
createSalaried();
}//else*/
else if(raiseSal.getState())
increaseField.setEnabled(true);
rateField.setEnabled(false);
}//itemStateChanged
}//ItemEventHandler
public void createHourly()
nameField.requestFocus();
//String name = nameField.getText();
double payRate = Double.parseDouble(rateField.getText());
double hours = Double.parseDouble(hoursField.getText());
empArray[empCreated] = new HourlyEmployee(nameField.getText(), payRate, hours);
currentEmp = empCreated;
empCreated++;
//empData.add(emp.toString());
enterButton.setLabel("add");
}//createHourly
/* public void createSalaried()
nameField.requestFocus();
//String name = nameField.getText();
double payRate = Double.parseDouble(rateField.getText());
double hours = Double.parseDouble(hoursField.getText());
empArray[empCreated] = new HourlyEmployee(nameField.getText(), payRate, hours);
currentEmp = empCreated;
empCreated++;
enterButton = new Button("add");
}//createSalaried*/
looking forward your kindnessVisit YAT-Yet Another Thread this is a discussion using the Sun book Core Java 2
and one part in that book uses an example with Employee class of which I assume you are stealing your class-name from. Anyway, that thread is in the Java forums. -
Hi everyone ☺
I’m finally planning to start recording what I play, and after some hours of wandering on the web I found some interesting possibilities. Now what I need is to decide which one is more suitable for my needs, and here comes the moment for apple discussions
Basically, I will record my own music one track/instrument at a time (I’m still not able to play more than one…and I dont’ want to spend 2.000$ to buy a 24-ins device just to record drum tracks), I’d like to have a software with built-in effects for guitar/bass/voice, integrated soundtrack possibilities (to play with video recordings), mixing options for both stereo and surround mixing, and I don’t want any card to be placed into my mac. Well, and obviously the sound quality must be pro-like…as anyone probably wants.
So, here’s what I came up with:
a) getting logic pro studio 8 and apogee duet
b) getting pro tools m-powered and mbox 2
c) getting one of the two softwares and a Monster iStudioLink Instrument cable and plug instruments directly into the mac
Now, the questions are:
if I can plug an instrument directly into my mac and control all parameters via one of the two softwares, what do tools like duet and mbox2 serve for?
In the case this tools are useful [ ☺ ], why ☺ … and which is the couple software/hardware that can best suit my needs?
I assume that every software has a proprietary file extension in which audio tracks are saved, so that it should be impossible to record an audio track with one software and edit it with another that has different functions/plugins (ex. from logic to pro tools, from pro tools to cakewalk sonar which I have on a pc etc.). Am I right, or is there any “standard”, non compressed high quality file type in which track can be saved and exported to be edited with different softwares?
I know that from this post it may easily seem that I’m a hopeless digital idiot, but I swear the situation is not really that bad so no need for the kind of explanations with drawings like the ones you find in the “for dummies” guides lol so every experts’ advice will be greatly appreciated
NeptuneThank you Bee Jay and Pancenter for the lighting-fast and useful answers
now I am aware that an interface IS NEEDED lol (that means they are not produced without a reasons, are they?). I know Pro Tools is the industry standard but I don't like anyone/anything to tie me to their choices/interests (so that's why I was asking about Pro Tools, knowing that there's some sort of "hardware threat"). What I look for is just quality and if I understood what you both mean, as far as this aspect is concerned, Logic and Pro Tools are substantially comparable...isn't it? On the interfaces side, I already checked the Saffire ones (they seem quite good, and cross-platform use is definitely a plus), I will check the others mentioned and will let you know In fact, I didn't consider the "platform problem" but, as I wrote, I also own a PC with an Audigy 2 soundcard (midi/analog/optical/digital inputs/outputs and firewire port...not Madonna's private studio, but not as sad as Mac's little hole) and Sonar 6 Producer Edition, so that has been a really good point to ponder. And now, in the middle of this software/hardware battle...any personal suggestions based on tests/personal experience? -
Urgent help needed for XML Tags using XMLForest()
Folks
I need some urgent help regarding getting use defined tag in your
XML output.
For this I am using XMLElement and XMLForest which seems to work fine
when used at the SQL prompt but when used in a procedure throws and error
SQL> Select SYS_XMLAGG(XMLElement("SDI",
XMLForest(sdi_num)))
From sdi
where sdi_num = 22261;- WORKS FINE
But when used in a procedure,doesnt seem to work
Declare
queryCtx DBMS_XMLQuery.ctxType;
v_xml VARCHAR2(32767);
v_xmlClob CLOB;
BEGIN
v_xml:='Select SYS_XMLAGG(XMLElement("SDI",
XMLFOREST(sdi_num)))
From sdi
where sdi_num = 22261';
queryCtx :=DBMS_XMLQuery.newContext(v_xml);
v_xmlClob :=DBMS_XMLQuery.getXML(queryCtx);
display_xml(v_xmlClob);
End;
CREATE OR REPLACE PROCEDURE display_xml(result IN OUT NOCOPY CLOB)
AS
xmlstr varchar2(32767);
line varchar2(2000);
BEGIN
xmlstr:=dbms_lob.SUBSTR(result,32767);
LOOP
EXIT WHEN xmlstr is null;
line :=substr(xmlstr,1,instr(xmlstr,chr(10))-1);
dbms_output.put_line('.'||line);
xmlstr := substr(xmlstr,instr(xmlstr,chr(10))+1);
END LOOP;
end;
SQL> /
.<?xml version = '1.0'?>
.<ERROR>oracle.xml.sql.OracleXMLSQLException: Character ')' is not allowed in an
XML tag name.</ERROR>
PL/SQL procedure successfully completed.
SQL>HELP is appreciated as to where I am going wrong?Hi,
if you want to transform something to something else, you should declare, what is your source.
I would prefer to use plain XSL-Transformations, because you have a lot more options to transform your source and you can even better determine, how your output should looks like.
Kind regards,
Hendrik -
Urgent Help Needed for WVC210 camera setup :)
Please help! I am trying to set up a Cisco WVC210 surveilance camera at one of the stores owned by the company I work for. Its a small business and I am the closest they have to an I.T person !! I have plenty of experience with software but not much on networking so need some idiot proof guidance ! The "administrative guide" is not worth the paper it is printed on!!
The store has a fixed IP address of 212.9.##.### I connected the camera using ethernet cable. Set the camera up using the software for the camera, with static ip address of 192.168.0.23. Set the SSID of the camera to that of the router (a Netgear one). It worked fine. I went to unplug so I could have it wireless and NOTHING !! It did work one time (no idea what i did differently!) but it would not work over the internet which is what we need it to do! I need the whole thing password protected too!
Is there ANYONE who can help me please??? I am at the point of running away from my work and never returning !!!! :s
Thank youHi Jodie,
Thank you for posting. In order to make the camera connect wirelessly, first set up the wireless settings in the camera to match the router. I usually open the router configuration page and copy and paste the SSID and Security Passphrase to the camera to avoid error. The next step is to unplug the ethernet cable and power cord from the camera. Then plug only the power back in and the camera should connect wirelessly.
For remote access to the camera you will need to forward port 80 to the LAN IP address of the camera. (192.168.0.23) This is done in the router. If you need help with port forwarding, you can search the web or call Netgear for assistance.
If you continue to need assistance with the camera, the fastest and easiest way to get assistance is to call Cisco Small Business Support. www.cisco.com/go/sbsc
Please go to www.cisco.com and click on "Register" in the upper right to create a user ID. This will allow our engineers to create a case for you. -
Urgent help needed for hysterical female!
I need urgent help in editing a pic that has been emailed to me, I do not know which Adobe programme to upload it too. Currently use Picasso - usually brilliant, but now gets jammed with a pop up box asking me to either accept or deny picnik. When I googled picnik, it now belongs to Google - don't know how to do a damn thing now!! Extremely Frustrated, can anybody suggest/help me
The only Adobe program I know that can edit images is Photoshop.
If you have troubles with Google software, you need to post in the appropriate Google forum. -
SAP PS Module Report, Help needed for the Right Logic.
Hi,
I have to develop a PS module Report . This spec of this report is when you enter , project # , month , date , proj type it should display all the projects and only the billing levels with different fiels like ITD cost, ITD sales, ytd cost, sales, awards etc etc.
Right now Iam getting the O/P : in the following manner, There are many fields I am just showing the desired ones which have to be changed.
Proj, Title, award, ITDsales, ITD cost , ytd sales, ytd costs,
14148, New prj 123 -- --- -
14148-B01, bill1 -
234 -
456 -
14148-B02, bill2 -
789 -
123 -
14148.001 wbs1 -
123 -
456
14148.001 wbs2 -
567 -
890
But for me the desired output must be only for project and the billing levels. It shouldnt be for WBS elements xxxx.001 and xxxx.002.
Desired output:
Proj, Title, award, ITDsales, ITD cost , ytd sales, ytd costs,
14148, New prj 123 -- 690 -
1346
14148-B01, bill1 -
234 -
456 -
14148-B02, bill2 -
789 -
123 -
The ITD costs and YTD costs must be added 123 + 567 = 690 and
456+890 = 1346.
And these values must come on the project level.
P.S: I can restrict the values for wbs elements , means I can filter them at PRPS table by giving prps-stufe LE 2. Then I wont get the wbs level, But I want the values of these to be added up and then show it on the project level.
Please go through this code and let me know where exactly I need to put the right logic to work in the desired manner.
Thanks in advance
Dan
Code Below************************
[code]TABLES: PROJ, "Project Definition
PRPS, "WBS Elements
prhi,
CEPC, " Profit Center w/ Group Head info
BPGE, "Plans (12, 13, etc.)
COSP, "Primary Cost Element (Bill Sales, DPC)
COSS, "Secondary Cost Element (Shrd Sls,Sal,etc)
COSB, "Results Analysis Cost Elements (Unbil Sls)
COOI, "Commitments management: Line items
JEST, "Project Status
TCJ04, "Person Responsible for Project
zpclasses, "Project classes.
New Added
CRCO, " Assignment of Work Center to Cost Center
CRHD. " Work Center Header
Record Layout of extracted data
TYPES: BEGIN OF EXDEF, "Data definition of extract data
X_BU(2) TYPE C, "Business Unit
X_CNTR(10) TYPE C, " Profit Center
X_PROJ(24) TYPE C, "Project def (Prj)
X_CREP(30) TYPE C, "Contract Rep.
X_BDREP(25) TYPE C, "BD Rep. name
X_GRPH(15) TYPE C, "Tech Rep employee name
X_ACTREP(15) TYPE C, "Acct Rep employee name
X_PMGR(15) TYPE C, "PM employee name
X_TTLE(35) TYPE C, "Title
X_CLNT(20) TYPE C, "Client
X_POCN(20) TYPE C, "Prime Contract Number
X_TYPE(13) TYPE C, "Order Type Sarnoff
X_OPEN(10) TYPE C, "Open Date
X_CLOSE(10) TYPE C, "Close Date
X_CGT(4) TYPE C, "CO, GV, TC
X_DISTR(2) TYPE C, "Distribution Channel
X_CONTR(6) TYPE C, "Percentage contribution
X_AWRD(14) TYPE C, "Award (Plan 11)
X_P12R(14) TYPE C, "Auth Revenue (Plan 12 @ Rev)
X_P12C(14) TYPE C, "Auth Cost (Plan 12 @ Cost)
X_P13R(14) TYPE C, "Auth Revenue (Plan 13 @ Rev)
X_P13C(14) TYPE C, "Auth Cost (Plan 13 @ Cost)
X_ITDS(14) TYPE C, "ITD Sales
X_ITDC(14) TYPE C, "ITD Costs
X_YTDS(14) TYPE C, "YTD Sales
X_YTDC(14) TYPE C, "YTD Costs
X_MTHS(14) TYPE C, "Current Month Sales
X_MTHC(14) TYPE C, "Current Month Costs
X_ITDB(14) TYPE C, "ITD Billed Sales
X_YTDB(14) TYPE C, "YTD Billed Sales
X_MTHB(14) TYPE C, "Current Month Billed Sales
X_COMM(14) TYPE C, "Commitments
X_STAT(6) TYPE C, "Active or Inactive (REL, TECO, or CLSD)
X_ZPROJCLASS(12),
X_MTHIC(14) TYPE C, "Current Month Incremental Costs
X_YTDIC(14) TYPE C, "YTD Incremental Costs
X_ITDIC(14) TYPE C, "ITD Incremental Costs
X_ZSCURVE(10) TYPE C, "S-CURVE Status
New Added
X_CM_COST(20) TYPE C,
X_AM_COST(20) TYPE C,
X_TL_COST(20) TYPE C,
X_KP_COST(20) TYPE C,
X_PM_COST(20) TYPE C,
END OF EXDEF.
Data declarations
FIELD-SYMBOLS <MNT> .
DATA: ETAB TYPE EXDEF OCCURS 100 WITH HEADER LINE.
DATA: X1_PM_COST(20) TYPE C,
X1_TL_COST(20) TYPE C,
X1_AM_COST(20) TYPE C,
X1_CM_COST(20) TYPE C,
X1_KP_COST(20) TYPE C.
DATA: KOKRS_FIXED LIKE PROJ-VKOKR VALUE 'DSRC', "Controlling Area
TOTAL_AWARD LIKE BPGE-WTGES,
TOTAL_AUTHR12 LIKE BPGE-WTGES,
TOTAL_AUTHC12 LIKE BPGE-WTGES,
TOTAL_AUTHR13 LIKE BPGE-WTGES,
TOTAL_AUTHC13 LIKE BPGE-WTGES,
TOTAL_ITDSALES LIKE BPGE-WTGES,
TOTAL_ITDCOSTS LIKE BPGE-WTGES,
TOTAL_ITDICOSTS LIKE BPGE-WTGES,
TOTAL_YTDSALES LIKE BPGE-WTGES,
TOTAL_YTDCOSTS LIKE BPGE-WTGES,
TOTAL_YTDICOSTS LIKE BPGE-WTGES,
TOTAL_MTHSALES LIKE BPGE-WTGES,
TOTAL_MTHCOSTS LIKE BPGE-WTGES,
TOTAL_MTHICOSTS LIKE BPGE-WTGES,
TOTAL_ITDBILLED LIKE BPGE-WTGES,
TOTAL_YTDBILLED LIKE BPGE-WTGES,
TOTAL_MTHBILLED LIKE BPGE-WTGES,
TOTAL_COMMITMENT LIKE COOI-WTGBTR,
HOLD_PRART LIKE PRPS-PRART,
COUNT_PROJECTS TYPE I,
MNT_INDX(20) TYPE C,
HLD_INDX(3) TYPE N,
YYYY_MM(10) TYPE C,
TEMP-DATE(8) TYPE C.
Selection Screen
SELECTION-SCREEN SKIP 3.
SELECTION-SCREEN BEGIN OF BLOCK XEXTRPM WITH FRAME TITLE TEXT-001.
SELECTION-SCREEN SKIP 2.
PARAMETERS MONTH(2) TYPE N OBLIGATORY.
PARAMETERS YEAR(4) TYPE N OBLIGATORY.
SELECT-OPTIONS: EXTRPRJ FOR PROJ-PSPID. " Range of Projects
SELECT-OPTIONS: EXTRTYP FOR PRPS-PRART. "Project Types (CO,GV,etc.*)
SELECT-OPTIONS: EXTRPCTR FOR PROJ-PRCTR. " Range of Profit centers
SELECTION-SCREEN SKIP 2.
PARAMETERS: OPT1 RADIOBUTTON GROUP OPTN,
OPT2 RADIOBUTTON GROUP OPTN DEFAULT 'X'.
select-options : s_pc for proj-zprojclass. "project class
SELECTION-SCREEN END OF BLOCK XEXTRPM.
Select Tables
START-OF-SELECTION.
write: / 'Sales data (Unshared) extracted on: ', sy-datum.
uline.
CLEAR: COUNT_PROJECTS,
TOTAL_AWARD,
TOTAL_AUTHR12,
TOTAL_AUTHC12,
TOTAL_AUTHR13,
TOTAL_AUTHC13,
TOTAL_ITDSALES,
TOTAL_ITDCOSTS,
TOTAL_YTDSALES,
TOTAL_YTDCOSTS,
TOTAL_MTHSALES,
TOTAL_MTHCOSTS,
TOTAL_ITDBILLED,
TOTAL_YTDBILLED,
TOTAL_MTHBILLED,
TOTAL_COMMITMENT,
ETAB.
PROJ Table Project Definition
SELECT * FROM PROJ "Project Definition
WHERE PSPID IN EXTRPRJ AND " Range of Project Numbers
PRCTR IN EXTRPCTR and " Range of Profit center
zprojclass in s_pc. "project class
SELECT * FROM PRPS WHERE "WBS Elements
PRART IN EXTRTYP " Range of Proj.Types (CO,GV,TC..
and PSPHI = PROJ-PSPNR.
HOLD_PRART = ' '. "clears project type
CLEAR ETAB.
ETAB-X_PROJ = PRPS-POSID.
ETAB-X_BU = PRPS-PRCTR(2). "Business Unit
ETAB-X_PMGR = PROJ-VERNA. "Project Manager
IF PRPS-PRCTR(2) = '01'.
ETAB-X_CNTR = PRPS-PRCTR. " Profit Center
CONCATENATE SPACE PRPS-PRCTR INTO ETAB-X_CNTR SEPARATED BY SPACE.
ELSE.
ETAB-X_CNTR = PRPS-PRCTR. " Profit Center
ENDIF.
ETAB-X_TTLE = PRPS-POST1. "Title
CLEAR TEMP-DATE.
TEMP-DATE = PROJ-PLFAZ. "Project planned start date
CONCATENATE TEMP-DATE4(2) '/' TEMP-DATE6(2) '/'
TEMP-DATE+0(4) INTO ETAB-X_OPEN.
TEMP-DATE = PROJ-PLSEZ. "Project planned finish date
CONCATENATE TEMP-DATE4(2) '/' TEMP-DATE6(2) '/'
TEMP-DATE+0(4) INTO ETAB-X_CLOSE.
Tech Lead
will comment below
SELECT SINGLE VERNA FROM TCJ04 "Tech Lead name from TCJ04
INTO (ETAB-X_GRPH) WHERE VERNR = PROJ-ZGRPHD.
End Of Tech Lead
Account Manager
SELECT SINGLE VERNA FROM TCJ04 "Acct Manager from TCJ04
INTO (ETAB-X_BDREP) WHERE VERNR = PROJ-ZBUSDEV.
******End Of Account Manager
Key Personnel
SELECT SINGLE VERNA FROM TCJ04 "Account Rep name from TCJ04
INTO (ETAB-X_ACTREP) WHERE VERNR = PROJ-ZRESPDIR.
********End of Key Personnel
**Contract Manager
SELECT SINGLE VERNA FROM TCJ04 "Contract Rep name from TCJ04
INTO (ETAB-X_CREP) WHERE VERNR = PROJ-ZCNTREP.
End of Contract Manager
PRPS Table WBS's attached to the Project
SELECT * FROM PRPS WHERE "WBS Elements
PRART IN EXTRTYP "Range of Proj.Types (CO,GV,TC..
AND PSPHI = PROJ-PSPNR.
order by posid stufe. "Sort by WBS & Level (needed?)
get info from level 1 of the WBS
IF PRPS-STUFE EQ 1. "top-level WBS element
HOLD_PRART = PRPS-PRART. "save project type for later
ETAB-X_STAT = '????'. "set ? as the default status
get Status for level 1
SELECT * FROM JEST "use JEST to determine Status
WHERE OBJNR = PRPS-OBJNR
AND INACT EQ SPACE. "space denotes an active status
CASE JEST-STAT. "find the system status (Ixxx)
WHEN 'I0001'.
ETAB-X_STAT = 'CRTD'. "Created
WHEN 'I0002'.
ETAB-X_STAT = 'REL'. "Released
WHEN 'I0045'.
ETAB-X_STAT = 'TECO'. "Technically Complete
WHEN 'I0046'.
ETAB-X_STAT = 'CLSD'. "Closed
ENDCASE.
ENDSELECT.
Select only active projects (ie; those not with TECO or CLSD)
IF OPT2 EQ 'X'
AND ( ETAB-X_STAT EQ 'TECO'
OR ETAB-X_STAT EQ 'CLSD' ).
EXIT.
ENDIF.
*comment Contract Rep and Proj man because we get them from PROJ now
etab-x_crep = prps-zzcont. "Contract Rep.
etab-x_pmgr = prps-verna. "Program Manager Name
ETAB-X_CLNT = PRPS-ZZMANDT. "Client Name
ETAB-X_CGT = PRPS-PRART. "CO, GV, TC, etc
ETAB-X_DISTR = PRPS-ZZVTWEG. "Distrib Channel (ie; GP, etc.)
ETAB-X_CONTR = PRPS-USR04. "Contribution %
ETAB-X_POCN = PRPS-ZZPOCN. "Contract Number
ETAB-X_TYPE = PRPS-ZZORDT. "Order Type Sarnoff
Award and Authorization (Revenue & Cost)
SELECT * FROM BPGE
WHERE OBJNR = PRPS-OBJNR
AND LEDNR = '0001' "Budget / Planning Ledger
AND TRGKZ = 'N' "Object indicator
AND WRTTP = '01' "Value Type
AND ( VERSN = '011' "011 = Award
OR VERSN = '012' "012 = Billing Authorization
OR VERSN = '013' ). "013 = RA Authorization
"010 = Funding Authorization
Award Plan 11
IF BPGE-VERSN = '011'. "Plan 11 = Award
CASE BPGE-VORGA.
WHEN 'KSTP'. "KSTP = Cost level
ETAB-X_AWRD = ETAB-X_AWRD + BPGE-WTGES.
ENDCASE.
ENDIF.
IF prps-stufe eq '2'.
Authorization (Revenue & Cost plan 12) Plan 12
IF BPGE-VERSN = '012'. "Plan 12 = RA Authorization
CASE BPGE-VORGA.
WHEN 'KSTR'. "KSTR = Revenue level
ETAB-X_P12R = ETAB-X_P12R - BPGE-WTGES.
WHEN 'KSTP'. "KSTP = Cost level
ETAB-X_P12C = ETAB-X_P12C + BPGE-WTGES.
ENDCASE.
ENDIF.
Authorization (Revenue & Cost plan 13) Plan 13
IF BPGE-VERSN = '013'. "Plan 13 = RA Authorization
CASE BPGE-VORGA.
WHEN 'KSTR'. "KSTR = Revenue level
ETAB-X_P13R = ETAB-X_P13R - BPGE-WTGES.
WHEN 'KSTP'. "KSTP = Cost level
ETAB-X_P13C = ETAB-X_P13C + BPGE-WTGES.
ENDCASE.
ENDIF.
endif.
ENDSELECT. "BPGE
ENDIF. "end of if prps-stufe eq 1. top-level WBS element
COSP Table (External Postings) Awards
COSP Table (External Postings) Billed Sales
COSP Table (External Postings) DPC's & Legacy Load
SELECT * FROM COSP
WHERE OBJNR = PRPS-OBJNR AND
GJAHR LE YEAR
AND (
( kstar = '0000400999' and "old CE for Award $
( KSTAR BETWEEN '0000400990' AND '0000400999' AND
VERSN = '011' AND "11 = Award
WRTTP = '01' ) "01 = Planned
OR ( ( KSTAR BETWEEN '0000400001' AND '0000400989' OR
KSTAR BETWEEN '0000999001' AND '0000999003' ) AND
WRTTP = '04' ) "04 = Actuals
OR ( ( KSTAR BETWEEN '0000998001' AND '0000998010' OR
KSTAR BETWEEN '0000600001' AND '0000601999' ) AND
WRTTP = '04' ) "04 = Actuals
*------- Awards
if cosp-kstar = '0000400999' and "old 400999 = Awards
IF COSP-KSTAR BETWEEN '0000400990' AND '0000400999' AND
COSP-VERSN = '011' AND "11 = Award
COSP-WRTTP = '01'. "01 = Planned
IF YEAR = COSP-GJAHR.
DO.
IF SY-INDEX LE MONTH.
MOVE SY-INDEX TO HLD_INDX.
MNT_INDX = 'COSP-WKGXXX'.
REPLACE 'XXX' WITH HLD_INDX INTO MNT_INDX.
ASSIGN (MNT_INDX) TO <MNT>.
ETAB-X_AWRD = ETAB-X_AWRD + <MNT>.
ELSE.
EXIT.
ENDIF.
ENDDO.
ELSEIF YEAR > COSP-GJAHR.
ETAB-X_AWRD = ETAB-X_AWRD +
COSP-WKG001 + COSP-WKG002 +
COSP-WKG003 + COSP-WKG004 +
COSP-WKG005 + COSP-WKG006 +
COSP-WKG007 + COSP-WKG008 +
COSP-WKG009 + COSP-WKG010 +
COSP-WKG011 + COSP-WKG012 +
COSP-WKG013 + COSP-WKG014 +
COSP-WKG015 + COSP-WKG016.
ELSE.
EXIT.
ENDIF.
ENDIF.
*------- Billed Sales
IF ( COSP-KSTAR BETWEEN '0000400001' AND '0000400989' OR
COSP-KSTAR BETWEEN '0000999001' AND '0000999003' ) AND
COSP-WRTTP = '04'.
"0000999001 = ITD Sales
"0000999003 = ITD Billed Revenue
IF YEAR = COSP-GJAHR.
DO.
IF SY-INDEX LE MONTH.
MOVE SY-INDEX TO HLD_INDX.
MNT_INDX = 'COSP-WKGXXX'.
REPLACE 'XXX' WITH HLD_INDX INTO MNT_INDX.
ASSIGN (MNT_INDX) TO <MNT>.
ETAB-X_ITDB = ETAB-X_ITDB - <MNT>.
ETAB-X_YTDB = ETAB-X_YTDB - <MNT>.
IF SY-INDEX = MONTH.
ETAB-X_MTHB = ETAB-X_MTHB - <MNT>.
ENDIF.
ELSE.
EXIT.
ENDIF.
ENDDO.
ELSEIF YEAR > COSP-GJAHR.
ETAB-X_ITDB = ETAB-X_ITDB -
COSP-WKG001 - COSP-WKG002 -
COSP-WKG003 - COSP-WKG004 -
COSP-WKG005 - COSP-WKG006 -
COSP-WKG007 - COSP-WKG008 -
COSP-WKG009 - COSP-WKG010 -
COSP-WKG011 - COSP-WKG012 -
COSP-WKG013 - COSP-WKG014 -
COSP-WKG015 - COSP-WKG016.
ELSE.
EXIT.
ENDIF.
ENDIF.
*------- DPC's & Legacy Load
IF ( COSP-KSTAR BETWEEN '0000998001' AND '0000998010' OR
COSP-KSTAR BETWEEN '0000600001' AND '0000601999' ) AND
COSP-WRTTP = '04'.
IF YEAR = COSP-GJAHR.
DO.
IF SY-INDEX LE MONTH.
MOVE SY-INDEX TO HLD_INDX.
MNT_INDX = 'COSP-WKGXXX'.
REPLACE 'XXX' WITH HLD_INDX INTO MNT_INDX.
ASSIGN (MNT_INDX) TO <MNT>.
ETAB-X_ITDC = ETAB-X_ITDC + <MNT>.
ETAB-X_YTDC = ETAB-X_YTDC + <MNT>.
IF SY-INDEX = MONTH.
ETAB-X_MTHC = ETAB-X_MTHC + <MNT>.
ENDIF.
ELSE.
EXIT.
ENDIF.
ENDDO.
ELSEIF YEAR > COSP-GJAHR.
ETAB-X_ITDC = ETAB-X_ITDC +
COSP-WKG001 + COSP-WKG002 +
COSP-WKG003 + COSP-WKG004 +
COSP-WKG005 + COSP-WKG006 +
COSP-WKG007 + COSP-WKG008 +
COSP-WKG009 + COSP-WKG010 +
COSP-WKG011 + COSP-WKG012 +
COSP-WKG013 + COSP-WKG014 +
COSP-WKG015 + COSP-WKG016.
ELSE.
EXIT.
ENDIF.
ENDIF.
ENDSELECT.
COOI Table (Commitments) commitments for the WBS elements
SELECT * FROM COOI
WHERE OBJNR = PRPS-OBJNR.
ETAB-X_COMM = ETAB-X_COMM + COOI-WTGBTR.
ENDSELECT.
COSS Table (External Postings) G&A on Commitments
COSS Table (External Postings) Shared Billed Sales
COSS Table (External Postings) Shared DPC's
COSS Table (External Postings) Salary,ESE,OH, & G&A
SELECT * FROM COSS
WHERE
( OBJNR = PRPS-OBJNR AND
WRTTP = '22' ) "G&A on Commitments
OR
( OBJNR = PRPS-OBJNR AND
GJAHR LE YEAR AND
WRTTP = '04' AND "04 = Actuals
( "Shared Billed Sales
( KSTAR BETWEEN '0000400001' AND '0000400989' OR
KSTAR BETWEEN '0000999001' AND '0000999003' )
OR "Shared DPC's
( KSTAR BETWEEN '0000600001' AND '0000601999' )
OR "Salary,ESE,OH, & G&A
( ( KSTAR BETWEEN '0000001000' AND '0000001999' OR
KSTAR BETWEEN '0000002100' AND '0000002199' OR
KSTAR BETWEEN '0000002500' AND '0000002599' OR
KSTAR BETWEEN '0000002800' AND '0000002899' ) )
and parob not like 'PR%' ) "commented out on 4/19/2000
*------- G&A on Commitments (NOTE: data is always as of the RUN date)
IF COSS-WRTTP = '22'.
ETAB-X_COMM = ETAB-X_COMM +
COSS-WKG001 + COSS-WKG002 +
COSS-WKG003 + COSS-WKG004 +
COSS-WKG005 + COSS-WKG006 +
COSS-WKG007 + COSS-WKG008 +
COSS-WKG009 + COSS-WKG010 +
COSS-WKG011 + COSS-WKG012 +
COSS-WKG013 + COSS-WKG014 +
COSS-WKG015 + COSS-WKG016.
ENDIF.
*------- Shared Billed Sales
IF ( COSS-KSTAR BETWEEN '0000400001' AND '0000400989' OR
COSS-KSTAR BETWEEN '0000999001' AND '0000999003' ) AND
COSS-WRTTP = '04'.
IF YEAR = COSS-GJAHR.
DO.
IF SY-INDEX LE MONTH.
MOVE SY-INDEX TO HLD_INDX.
MNT_INDX = 'COSS-WKGXXX'.
REPLACE 'XXX' WITH HLD_INDX INTO MNT_INDX.
ASSIGN (MNT_INDX) TO <MNT>.
ETAB-X_ITDB = ETAB-X_ITDB - <MNT>.
ETAB-X_YTDB = ETAB-X_YTDB - <MNT>.
IF SY-INDEX = MONTH.
ETAB-X_MTHB = ETAB-X_MTHB - <MNT>.
ENDIF.
ELSE.
EXIT.
ENDIF.
ENDDO.
ELSEIF YEAR > COSS-GJAHR.
ETAB-X_ITDB = ETAB-X_ITDB -
COSS-WKG001 - COSS-WKG002 -
COSS-WKG003 - COSS-WKG004 -
COSS-WKG005 - COSS-WKG006 -
COSS-WKG007 - COSS-WKG008 -
COSS-WKG009 - COSS-WKG010 -
COSS-WKG011 - COSS-WKG012 -
COSS-WKG013 - COSS-WKG014 -
COSS-WKG015 - COSS-WKG016.
ELSE.
EXIT.
ENDIF.
ENDIF.
*------- Shared DPC's
IF COSS-KSTAR BETWEEN '0000600001' AND '0000601999' AND
COSS-WRTTP = '04'.
IF YEAR = COSS-GJAHR.
DO.
IF SY-INDEX LE MONTH.
MOVE SY-INDEX TO HLD_INDX.
MNT_INDX = 'COSS-WKGXXX'.
REPLACE 'XXX' WITH HLD_INDX INTO MNT_INDX.
ASSIGN (MNT_INDX) TO <MNT>.
ETAB-X_ITDC = ETAB-X_ITDC + <MNT>.
ETAB-X_YTDC = ETAB-X_YTDC + <MNT>.
IF SY-INDEX = MONTH.
ETAB-X_MTHC = ETAB-X_MTHC + <MNT>.
ENDIF.
ELSE.
EXIT.
ENDIF.
ENDDO.
ELSEIF YEAR > COSS-GJAHR.
ETAB-X_ITDC = ETAB-X_ITDC +
COSS-WKG001 + COSS-WKG002 +
COSS-WKG003 + COSS-WKG004 +
COSS-WKG005 + COSS-WKG006 +
COSS-WKG007 + COSS-WKG008 +
COSS-WKG009 + COSS-WKG010 +
COSS-WKG011 + COSS-WKG012 +
COSS-WKG013 + COSS-WKG014 +
COSS-WKG015 + COSS-WKG016.
ELSE.
EXIT.
ENDIF.
ENDIF.
*------- Salary,ESE,OH,& G&A
IF ( COSS-KSTAR BETWEEN '0000001000' AND '0000001999' OR
COSS-KSTAR BETWEEN '0000002100' AND '0000002199' OR
COSS-KSTAR BETWEEN '0000002500' AND '0000002599' OR
COSS-KSTAR BETWEEN '0000002800' AND '0000002899' ) AND
COSS-WRTTP = '04'.
IF YEAR = COSS-GJAHR.
DO.
IF SY-INDEX LE MONTH.
MOVE SY-INDEX TO HLD_INDX.
MNT_INDX = 'COSS-WKGXXX'.
REPLACE 'XXX' WITH HLD_INDX INTO MNT_INDX.
ASSIGN (MNT_INDX) TO <MNT>.
ETAB-X_ITDC = ETAB-X_ITDC + <MNT>.
ETAB-X_YTDC = ETAB-X_YTDC + <MNT>.
IF SY-INDEX = MONTH.
ETAB-X_MTHC = ETAB-X_MTHC + <MNT>.
ENDIF.
ELSE.
EXIT.
ENDIF.
ENDDO.
ELSEIF YEAR > COSS-GJAHR.
ETAB-X_ITDC = ETAB-X_ITDC +
COSS-WKG001 + COSS-WKG002 +
COSS-WKG003 + COSS-WKG004 +
COSS-WKG005 + COSS-WKG006 +
COSS-WKG007 + COSS-WKG008 +
COSS-WKG009 + COSS-WKG010 +
COSS-WKG011 + COSS-WKG012 +
COSS-WKG013 + COSS-WKG014 +
COSS-WKG015 + COSS-WKG016.
ELSE.
EXIT.
ENDIF.
ENDIF.
ENDSELECT.
COSB Table (Results from running RA) Unbilled Sales
SELECT * FROM COSB
WHERE OBJNR = PRPS-OBJNR
AND KSTAR BETWEEN '0000003004' AND '0000003005'
"0000003004 = Unbilled Revenue
"0000003005 = Unearned Revenue
AND GJAHR LE YEAR
AND WRTTP = '32'. "32 = Results Analysis
IF YEAR = COSB-GJAHR.
DO.
IF SY-INDEX LE MONTH.
MOVE SY-INDEX TO HLD_INDX.
MNT_INDX = 'COSB-WKGXXX'.
REPLACE 'XXX' WITH HLD_INDX INTO MNT_INDX.
ASSIGN (MNT_INDX) TO <MNT>.
ETAB-X_ITDS = ETAB-X_ITDS - <MNT>.
ETAB-X_YTDS = ETAB-X_YTDS - <MNT>.
IF SY-INDEX = MONTH.
ETAB-X_MTHS = ETAB-X_MTHS - <MNT>.
ENDIF.
ELSE.
EXIT.
ENDIF.
ENDDO.
ELSEIF YEAR > COSB-GJAHR.
ETAB-X_ITDS = ETAB-X_ITDS -
COSB-WKG001 - COSB-WKG002 -
COSB-WKG003 - COSB-WKG004 -
COSB-WKG005 - COSB-WKG006 -
COSB-WKG007 - COSB-WKG008 -
COSB-WKG009 - COSB-WKG010 -
COSB-WKG011 - COSB-WKG012 -
COSB-WKG013 - COSB-WKG014 -
COSB-WKG015 - COSB-WKG016.
ELSE.
EXIT.
ENDIF.
ENDSELECT.
ENDSELECT. "End of WBS records (from PRPS) for project
Get Total Sales by adding Billed Sales to Unbilled Sales.
ETAB-X_ITDS = ETAB-X_ITDS + ETAB-X_ITDB.
ETAB-X_YTDS = ETAB-X_YTDS + ETAB-X_YTDB.
ETAB-X_MTHS = ETAB-X_MTHS + ETAB-X_MTHB.
IF HOLD_PRART IN EXTRTYP. "Matches the user requested project type
IF OPT1 EQ 'X' OR "All projects
( OPT2 EQ 'X' AND "Only active projects
ETAB-X_STAT NE 'TECO' AND
ETAB-X_STAT NE 'CLSD' ).
TOTAL_AWARD = TOTAL_AWARD + ETAB-X_AWRD.
TOTAL_AUTHR12 = TOTAL_AUTHR12 + ETAB-X_P12R .
TOTAL_AUTHC12 = TOTAL_AUTHC12 + ETAB-X_P12C.
TOTAL_AUTHR13 = TOTAL_AUTHR13 + ETAB-X_P13R.
TOTAL_AUTHC13 = TOTAL_AUTHC13 + ETAB-X_P13C.
TOTAL_ITDSALES = TOTAL_ITDSALES + ETAB-X_ITDS.
TOTAL_ITDCOSTS = TOTAL_ITDCOSTS + ETAB-X_ITDC.
TOTAL_YTDSALES = TOTAL_YTDSALES + ETAB-X_YTDS.
TOTAL_YTDCOSTS = TOTAL_YTDCOSTS + ETAB-X_YTDC.
TOTAL_MTHSALES = TOTAL_MTHSALES + ETAB-X_MTHS.
TOTAL_MTHCOSTS = TOTAL_MTHCOSTS + ETAB-X_MTHC.
TOTAL_ITDBILLED = TOTAL_ITDBILLED + ETAB-X_ITDB.
TOTAL_YTDBILLED = TOTAL_YTDBILLED + ETAB-X_YTDB.
TOTAL_MTHBILLED = TOTAL_MTHBILLED + ETAB-X_MTHB.
TOTAL_COMMITMENT = TOTAL_COMMITMENT + ETAB-X_COMM.
PERFORM SHIFT_SIGN.
APPEND ETAB. "Write data to internal table
CLEAR ETAB.
COUNT_PROJECTS = COUNT_PROJECTS + 1. "Count # of Projects
ENDIF.
ENDIF.
ENDSELECT.
ENDSELECT. "End of Projects from PROJ table
PERFORM GRAND_TOTALS.
SORT ETAB BY X_BU X_PROJ.
ETAB-X_BU = 'BU'.
ETAB-X_CNTR = 'PrftCntr'.
ETAB-X_PROJ = 'Proj'.
ETAB-X_CREP = 'Contract Mgr'.
ETAB-X_BDREP = 'Account Mgr'.
ETAB-X_GRPH = 'Technical Lead'.
ETAB-X_ACTREP = 'Key Person1'.
ETAB-X_PMGR = 'Program Mgr'.
ETAB-X_TTLE = 'Title'.
ETAB-X_CLNT = 'Client'.
ETAB-X_POCN = 'Contract #'.
ETAB-X_TYPE = 'Type'.
ETAB-X_OPEN = 'Open'.
ETAB-X_CLOSE = 'Close'.
ETAB-X_CGT = 'CGT'.
ETAB-X_DISTR = 'DC'.
ETAB-X_CONTR = 'Contr%'.
ETAB-X_AWRD = 'Award'.
ETAB-X_P12R = 'Auth12 Sales'.
ETAB-X_P12C = 'Auth12 Cost'.
ETAB-X_P13R = 'Auth13 Sales'.
ETAB-X_P13C = 'Auth13 Cost'.
ETAB-X_ITDS = 'ITD Sales'.
ETAB-X_ITDC = 'ITD Costs'.
ETAB-X_YTDS = 'YTD Sales'.
ETAB-X_YTDC = 'YTD Costs'.
ETAB-X_MTHS = 'Mth Sales'.
ETAB-X_MTHC = 'Mth Costs'.
ETAB-X_ITDB = 'ITD Billed'.
ETAB-X_YTDB = 'YTD Billed'.
ETAB-X_MTHB = 'Mth Billed'.
ETAB-X_COMM = 'Commitments'.
ETAB-X_STAT = 'Status'.
INSERT ETAB INDEX 1. "Write a report header line to internal table
CLEAR ETAB.
CALL FUNCTION 'Z_RH_START_EXCEL_DATA_OLE'
EXPORTING
data_name = 'C:\WINNT\Profiles\cbraswell\Desktop\TestTemp.xlt'
DATA_NAME = 'ZSales.XLS'
DATA_PATH_FLAG = 'W'
DATA_TYPE = 'DAT'
DATA_BIN_FILE_SIZE = 'ZSales'
CHART_TITLE = 'ZSales'
CHART_TYPE = 2
CATEGORY_TITLE = 'ZSales'
VALUE_TITLE = 'ZSales'
DATA_XTOP_COR = 0
DATA_YTOP_COR = 0
DATA_XBOT_COR = 0
DATA_YBOT_COR = 0
CATEGORY_XTOP_COR = 0
CATEGORY_YTOP_COR = 0
CATEGORY_XBOT_COR = 0
CATEGORY_YBOT_COR = 0
TABLES
DATA_TAB = ETAB
EXCEPTIONS
NO_BATCH = 1
DOWNLOAD_ERROR = 2
INVALID_TYPE = 3
INTERNAL_ERROR = 4
NO_OLE_SUPPORT = 5
OLE_FILE_ERROR = 6
OLE_ERROR = 7
NO_DATA = 8
COORDINATE_ERROR = 9
OTHERS = 10.
Negative # sign in the front of number for downloading to Excel
FORM SHIFT_SIGN.
IF ETAB-X_AWRD CA '-'. SHIFT ETAB-X_AWRD RIGHT CIRCULAR. ENDIF.
IF ETAB-X_P12R CA '-'. SHIFT ETAB-X_P12R RIGHT CIRCULAR. ENDIF.
IF ETAB-X_P12C CA '-'. SHIFT ETAB-X_P12C RIGHT CIRCULAR. ENDIF.
IF ETAB-X_P13R CA '-'. SHIFT ETAB-X_P13R RIGHT CIRCULAR. ENDIF.
IF ETAB-X_P13C CA '-'. SHIFT ETAB-X_P13C RIGHT CIRCULAR. ENDIF.
IF ETAB-X_ITDS CA '-'. SHIFT ETAB-X_ITDS RIGHT CIRCULAR. ENDIF.
IF ETAB-X_ITDIC CA '-'. SHIFT ETAB-X_ITDIC RIGHT CIRCULAR. ENDIF.
IF ETAB-X_ITDC CA '-'. SHIFT ETAB-X_ITDC RIGHT CIRCULAR. ENDIF.
IF ETAB-X_YTDS CA '-'. SHIFT ETAB-X_YTDS RIGHT CIRCULAR. ENDIF.
IF ETAB-X_YTDC CA '-'. SHIFT ETAB-X_YTDC RIGHT CIRCULAR. ENDIF.
IF ETAB-X_YTDIC CA '-'. SHIFT ETAB-X_YTDIC RIGHT CIRCULAR. ENDIF.
IF ETAB-X_MTHS CA '-'. SHIFT ETAB-X_MTHS RIGHT CIRCULAR. ENDIF.
IF ETAB-X_MTHC CA '-'. SHIFT ETAB-X_MTHC RIGHT CIRCULAR. ENDIF.
IF ETAB-X_MTHIC CA '-'. SHIFT ETAB-X_MTHIC RIGHT CIRCULAR. ENDIF.
IF ETAB-X_ITDB CA '-'. SHIFT ETAB-X_ITDB RIGHT CIRCULAR. ENDIF.
IF ETAB-X_YTDB CA '-'. SHIFT ETAB-X_YTDB RIGHT CIRCULAR. ENDIF.
IF ETAB-X_MTHB CA '-'. SHIFT ETAB-X_MTHB RIGHT CIRCULAR. ENDIF.
IF ETAB-X_COMM CA '-'. SHIFT ETAB-X_COMM RIGHT CIRCULAR. ENDIF.
ENDFORM.
FORM GRAND_TOTALS.
SKIP 1. .
WRITE: / '----
WRITE: / 'System ID = ', SY-SYSID,
/ 'Client = ', SY-MANDT,
/ 'User = ', SY-UNAME,
/ 'Date of data extract = ', SY-DATUM ,
/ 'Number of Projects = ', COUNT_PROJECTS,
/ 'total Award (Plan 11) = ', TOTAL_AWARD,
/ 'total Auth SalesHi all,
Iam really waiting for someone to see and get the logic right for this code.Iam completely stuck up. i need ur help
Thanks -
URGENT : Help needed for OLAP tools selection
Hi Gurus,
Environment :
Oracle 10g
.net web application with backend as Oracle 10g server embaded with OLAP server.
Application - CRM
Feature requreid - OLAP, OLAP Reporting, Drilldown graphical analysis, US MAP view location specific queries, Ad-hoc analysis.
I have to take a descision for for the OLAP tool selection with above mention client requirement.
* Please let me know if anybody have worked on above combination for the required features and held up with any issue (if any) ?
* Please go thru Oracle options below per feature and let me know is there any issue with .NET and IIS server,Oracle 10g OLAP compatibily ? specially for following points from the below details -
4. OLAP Reporting Tool :
6. Web deployment of Cubes :
8. Graphing :
9. Geographical Map View based query :
1.Extraction Transformation and loading (ETL) Tool : Oracle Business Intelligence Warehouse Builder, tightly integrated with Database Server.
2. Analysis Tool (Multidimensional Data Analysis using cubes) : Oracle Business Intelligence Discoverer·
3. Ad-hoc query and analysis by end User :
Oracle Business Intelligence Spreadsheet Add-in.OLAP DML Regular Sql with OLAP_TABLE Function.
4. OLAP Reporting Tool : Oracle Reports 10g.
5. Multidimensional Data (Cube) Query Language OLAP DML : Regular Sql with OLAP_TABLE Function
6.Web deployment of Cubes : Available
7. Cube data export to xls, html, format : Available
8.Graphing : Oracle Reports 10g Graph Wizard for Graphical Analysis.
9. Geographical Map View based query : Oracle Locator: Location-Enabling Every Oracle Database
Please send me the relevent urls in support / issues for the above featues.
TIA,
SheileshThe only Adobe program I know that can edit images is Photoshop.
If you have troubles with Google software, you need to post in the appropriate Google forum. -
Urgent Help need for ABAP Custom Process Types
Hi Gurus,
I have created a Custom Process Type for ABAP program which returns status (Success or Failure).
I followed the below procedure to create a custom ABAP process type.
In RSPC, I went to Settings -> Maintain process types
I selected the ABAP process type and then selected the EDIT -> COPY AS and then in the process chain configuration screen, I gave a new name to the process type, changed the POSSIBLE EVENTS settings to "2 process ends "successful" or "failure" and saved the settings to confirm changes.
Now I can see the new process type for ABAP program which returns the success or failure for the successors.
Now, my question is, where do i write the logic for ABAP program ? how does the ABAP program returns the success or failure. Do I have to change the code in the method IF_RSPC_EXECUTE~EXECUTE to return success or failure. Please make me clear where I can write the code? For example in my ABAP program, I am searching a table to find a specific value. If the value is not found, then the ABAP process type should return failure, if found should return success. How can I do this?
Thanks in advance,
Regards,
aarthi
[email protected]Hi,
We have a similar problem. We have an ABAP program in a process chain that
uses a custom process type with on success and on failure.
If the program is successful there is no problem. it will run the next process step.
The problem is when the ABAP Program fails and even though the message class is E in our ABAP program it has a confirm popup message with a status change and asks "Save Status and Trigger Events if Appropriate".
Once you enter Yes to continue it then continues to the next step in the program and is fine.I traced in debug where this status message is appearing. It is in CL_RSPC_LOG. There is a popup_to_confirm_step where it checks the e_status that is value J ( Framework Error upon completion). Then it submits the rspc_process_finish program to complete and call the on error process step.
Has anyone else experienced this and is there any other documents out there to help me?
Apologies if this is not very clear.
Any assistance would be appreciated.
Thanks
Monica Mandia -
Urgent solution needed for the Problem ( get all the combination from table
we are having a table in following format
day | grpID | pktID
sun | 1 | 001
sun | 1 | 002
sun | 1 | 003
sun | 2 | 007
sun | 2 | 008
sun | 2 | 009
mon | 1 | 001
mon | 1 | 002
mon | 1 | 003
mon | 2 | 007
mon | 2 | 008
mon | 2 | 009
tue | 1 | 001
tue | 1 | 002
tue | 1 | 003
tue | 2 | 007
tue | 2 | 010
1. We have a combination of pkdIDs related with a specific grpID, for a particular day.
Ex: For Sunday, we have two combination list for grpID=1 is (001,002,003) and for group id = 2 is (007,008,009)
2. We need to get all the available combined pktid for each group id for all the days .
Eg the the expected result that is needed from the above table
(001,002,003)
(007,008,009)
(007,010)SQL> with tbl as
2 (select 'sun' d, 1 grp, '001' pk from dual union all
3 select 'sun' d, 1 grp, '002' pk from dual union all
4 select 'sun' d, 1 grp, '003' pk from dual union all
5 select 'sun' d, 2 grp, '007' pk from dual union all
6 select 'sun' d, 2 grp, '008' pk from dual union all
7 select 'sun' d, 2 grp, '009' pk from dual union all
8 select 'mon' d, 1 grp, '001' pk from dual union all
9 select 'mon' d, 1 grp, '002' pk from dual union all
10 select 'mon' d, 1 grp, '003' pk from dual union all
11 select 'mon' d, 2 grp, '007' pk from dual union all
12 select 'mon' d, 2 grp, '008' pk from dual union all
13 select 'mon' d, 2 grp, '009' pk from dual union all
14 select 'tue' d, 1 grp, '001' pk from dual union all
15 select 'tue' d, 1 grp, '002' pk from dual union all
16 select 'tue' d, 1 grp, '003' pk from dual union all
17 select 'tue' d, 2 grp, '007' pk from dual union all
18 select 'tue' d, 2 grp, '010' pk from dual) -- end of data sample
19 select distinct '('||ltrim(max(c1) keep (dense_rank last order by lv),',')||')'
20 from (select d,grp,level lv,sys_connect_by_path(pk,',') c1
21 from tbl
22 connect by d=prior d and grp = prior grp and pk > prior pk)
23 group by d,grp;
'('||LTRIM(MAX(C1)KEEP(DENSE_RANKLASTORDERBYLV),',')||')'
(001,002,003)
(007,008,009)
(007,010)
SQL>That works on 9i. Other possiblities on 10g.
Nicolas. -
firstly i made a jtable to adds and deletes rows and passes the the data to the table model from some textfields. then i wanted to add a tablemoselistener method in order to change the value in the columns 1,2,3,4 and set the result of them in the column 5. when i added that portion of code the buttons that added and deleted rows had problems to function correctly..they dont work at all..can somebody have a look in my code and see wot is wrong..thanx in advance..
below follows the code..sorry for the mesh of the code..you can use and run the code and notice the problem when you press the add button..also if you want delete the TableChanged method to see that the add button works perfect.
* Created on 03-Aug-2005
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
* @author Administrator
* TODO To change the template for this generated type comment go to
* Window - Preferences - Java - Code Style - Code Templates
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.util.Vector;
import javax.swing.*;
import javax.swing.table.*;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import java.io.*;
public class NodesTable extends JFrame implements TableModelListener, ActionListener {
JTable jt;
DefaultTableColumnModel dtcm;
TableColumn column[] = new TableColumn[100];
DefaultTableModel dtm;
JLabel Name,m1,w1,m2,w2;
JTextField NameTF,m1TF,w1TF,m2TF,w2TF;
String c [] ={ "Name", "Assessment1", "Weight1" , "Assessment2","Weight2 ","TotalMark"};
float x=0,y=0,tMark=0,z = 0;
float j=0;
int i;
JButton DelButton;
JButton AddButton;
JScrollPane scrollPane;
JPanel mainPanel,buttonPanel;
JFrame frame;
Object[][] data =
{"tami", new Float(1), new Float(1.11), new Float(1.11),new Float(1),new Float(1)},
{"tami", new Float(1), new Float(2.22), new Float(2.22),new Float(1),new Float(1)},
{"petros", new Float(1), new Float(3.33), new Float(3.33),new Float(1),new Float(1)},
{"petros", new Float(1), new Float(4.44), new Float(4.44),new Float(1),new Float(1)}
public NodesTable() {
super("Student Marking Spreadsheet");
this.AddNodesintoTable();
setSize(400,250);
setVisible(true);
public void AddNodesintoTable(){
// Create a vector object and load them with the data
// to be placed on each row of the table
dtm = new DefaultTableModel(data,c);
dtm.addTableModelListener( this );
jt = new JTable(dtm){
// Returning the Class of each column will allow different
// renderers to be used based on Class
public Class getColumnClass(int column)
return getValueAt(0, column).getClass();
// The Cost is not editable
public boolean isCellEditable(int row, int column)
int modelColumn = convertColumnIndexToModel( column );
return (modelColumn == 5) ? false : true;
//****************************User Input**************************
//Add another node
//Creating and setting the properties
//of the panel's component (panels and textfields)
Name = new JLabel("Name");
Name.setForeground(Color.black);
m1 = new JLabel("Mark1");
m1.setForeground(Color.black);
w1 = new JLabel("Weigth1");
w1.setForeground(Color.black);
m2= new JLabel("Mark2");
m2.setForeground(Color.black);
w2 = new JLabel("Weight2");
w2.setForeground(Color.black);
NameTF = new JTextField(5);
NameTF.setText("Node");
m1TF = new JTextField(5);
w1TF = new JTextField(5);
m2TF=new JTextField(5);
w2TF=new JTextField(5);
//creating the buttons
JPanel buttonPanel = new JPanel();
AddButton=new JButton("Add Row");
DelButton=new JButton("Delete") ;
buttonPanel.add(AddButton);
buttonPanel.add(DelButton);
//adding the components to the panel
JPanel inputpanel = new JPanel();
inputpanel.add(Name);
inputpanel.add(NameTF);
inputpanel.add(m1);
inputpanel.add(m1TF);
inputpanel.add(w1);
inputpanel.add(w1TF);
inputpanel.add(m2);
inputpanel.add(m2TF);
inputpanel.add(w2TF);
inputpanel.add(w2);
inputpanel.add(AddButton);
inputpanel.add(DelButton);
//creating the panel and setting its properties
JPanel tablepanel = new JPanel();
tablepanel.add(new JScrollPane(jt, JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED
, JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS));
getContentPane().add(tablepanel, BorderLayout.CENTER);
getContentPane().add(inputpanel, BorderLayout.SOUTH);
//Method to add row for each new entry
public void addRow()
Vector r=new Vector();
r=createBlankElement();
dtm.addRow(r);
jt.addNotify();
public Vector createBlankElement()
Vector t = new Vector();
t.addElement((String) " ");
t.addElement((String) " ");
t.addElement((String) " ");
t.addElement((String) " ");
t.addElement((String) " ");
return t;
// Method to delete a row from the spreadsheet
void deleteRow(int index)
if(index!=-1) //At least one Row in Table
dtm.removeRow(index);
jt.addNotify();
// Method that adds and deletes rows
// from the table by pressing the
//corresponding buttons
public void actionPerformed(ActionEvent ae){
Float z=new Float (m2TF.getText());
String Name= NameTF.getText();
Float x= new Float(m1TF.getText());
Float y= new Float(w1TF.getText());
Float j=new Float (w2TF.getText());
JFileChooser jfc2 = new JFileChooser();
String newdata[]= {Name,String.valueOf(x),String.valueOf(y),
String.valueOf(z),String.valueOf(j)};
Object source = ae.getSource();
if(ae.getSource() == (JButton)AddButton)
addRow();
if (ae.getSource() ==(JButton) DelButton)
deleteRow(jt.getSelectedRow());
//method to calculate the total mark in the TotalMark column
//that updates the values in every other column
//It takes the values from the column 1,2,3,4
//and changes the value in the column 5
public void tableChanged(TableModelEvent e) {
System.out.println(e.getSource());
if (e.getType() == TableModelEvent.UPDATE)
int row = e.getFirstRow();
int column = e.getColumn();
if (column == 1 || column == 2 ||column == 3 ||column == 4)
TableModel model = jt.getModel();
float q= ((Float)model.getValueAt(row,1)).floatValue();
float w= ((Float)model.getValueAt(row,2)).floatValue();
float t= ((Float)model.getValueAt(row,3)).floatValue();
float r= ((Float)model.getValueAt(row,4)).floatValue();
Float tMark = new Float((q*w+t*r)/(w+r) );
model.setValueAt(tMark, row, 5);
// Which cells are editable.
// It is only necessary to implement this method
// if the table is editable
public boolean isCellEditable(int row, int col)
{ return true; //All cells are editable
public static void main(String[] args) {
NodesTable t=new NodesTable();
}There are too many mistakes in your program. It looks like you are new to java.
Your add and delete row buttons are not working because you haven't registered your action listener with these buttons.
I have modifide your code and now it works fine. Just put some validation code for the textboxes becuase it throws exception when user presses add button without entering anything.
Here is the updated code: Do the diff and u will know my changes
* Created on 03-Aug-2005
* TODO To change the template for this generated file go to
* Window - Preferences - Java - Code Style - Code Templates
* @author Administrator
* TODO To change the template for this generated type comment go to Window -
* Preferences - Java - Code Style - Code Templates
import java.awt.BorderLayout;
import java.awt.Color;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import javax.swing.JButton;
import javax.swing.JFrame;
import javax.swing.JLabel;
import javax.swing.JPanel;
import javax.swing.JScrollPane;
import javax.swing.JTable;
import javax.swing.JTextField;
import javax.swing.event.TableModelEvent;
import javax.swing.event.TableModelListener;
import javax.swing.table.DefaultTableColumnModel;
import javax.swing.table.DefaultTableModel;
import javax.swing.table.TableColumn;
import javax.swing.table.TableModel;
public class NodesTable extends JFrame implements TableModelListener,
ActionListener {
JTable jt;
DefaultTableColumnModel dtcm;
TableColumn column[] = new TableColumn[100];
DefaultTableModel dtm;
JLabel Name, m1, w1, m2, w2;
JTextField NameTF, m1TF, w1TF, m2TF, w2TF;
String c[] = { "Name", "Assessment1", "Weight1", "Assessment2", "Weight2 ",
"TotalMark" };
float x = 0, y = 0, tMark = 0, z = 0;
float j = 0;
int i;
JButton DelButton;
JButton AddButton;
JScrollPane scrollPane;
JPanel mainPanel, buttonPanel;
JFrame frame;
public NodesTable() {
super("Student Marking Spreadsheet");
this.AddNodesintoTable();
setSize(400, 250);
setVisible(true);
public void AddNodesintoTable() {
// Create a vector object and load them with the data
// to be placed on each row of the table
dtm = new DefaultTableModel(c,0);
dtm.addTableModelListener(this);
jt = new JTable(dtm) {
// The Cost is not editable
public boolean isCellEditable(int row, int column) {
int modelColumn = convertColumnIndexToModel(column);
return (modelColumn == 5) ? false : true;
//****************************User Input**************************
//Add another node
//Creating and setting the properties
//of the panel's component (panels and textfields)
Name = new JLabel("Name");
Name.setForeground(Color.black);
m1 = new JLabel("Mark1");
m1.setForeground(Color.black);
w1 = new JLabel("Weigth1");
w1.setForeground(Color.black);
m2 = new JLabel("Mark2");
m2.setForeground(Color.black);
w2 = new JLabel("Weight2");
w2.setForeground(Color.black);
NameTF = new JTextField(5);
NameTF.setText("Node");
m1TF = new JTextField(5);
w1TF = new JTextField(5);
m2TF = new JTextField(5);
w2TF = new JTextField(5);
//creating the buttons
JPanel buttonPanel = new JPanel();
AddButton = new JButton("Add Row");
AddButton.addActionListener(this);
DelButton = new JButton("Delete");
DelButton.addActionListener(this);
buttonPanel.add(AddButton);
buttonPanel.add(DelButton);
//adding the components to the panel
JPanel inputpanel = new JPanel();
inputpanel.add(Name);
inputpanel.add(NameTF);
inputpanel.add(m1);
inputpanel.add(m1TF);
inputpanel.add(w1);
inputpanel.add(w1TF);
inputpanel.add(m2);
inputpanel.add(m2TF);
inputpanel.add(w2TF);
inputpanel.add(w2);
inputpanel.add(AddButton);
inputpanel.add(DelButton);
//creating the panel and setting its properties
JPanel tablepanel = new JPanel();
tablepanel.add(new JScrollPane(jt,
JScrollPane.VERTICAL_SCROLLBAR_AS_NEEDED,
JScrollPane.HORIZONTAL_SCROLLBAR_ALWAYS));
getContentPane().add(tablepanel, BorderLayout.CENTER);
getContentPane().add(inputpanel, BorderLayout.SOUTH);
//Method to add row for each new entry
public void addRow() {
Float z = new Float(m2TF.getText());
String Name = NameTF.getText();
Float x = new Float(m1TF.getText());
Float y = new Float(w1TF.getText());
Float j = new Float(w2TF.getText());
String newdata[] = { Name, String.valueOf(x), String.valueOf(y),
String.valueOf(z), String.valueOf(j) };
dtm.addRow(newdata);
// Method to delete a row from the spreadsheet
void deleteRow(int index) {
if (index != -1) //At least one Row in Table
dtm.removeRow(index);
jt.addNotify();
// Method that adds and deletes rows
// from the table by pressing the
//corresponding buttons
public void actionPerformed(ActionEvent ae) {
Object source = ae.getSource();
if (ae.getSource() == (JButton) AddButton) {
addRow();
if (ae.getSource() == (JButton) DelButton) {
deleteRow(jt.getSelectedRow());
//method to calculate the total mark in the TotalMark column
//that updates the values in every other column
//It takes the values from the column 1,2,3,4
//and changes the value in the column 5
public void tableChanged(TableModelEvent e) {
System.out.println(e.getSource());
//if (e.getType() == TableModelEvent.UPDATE) {
int row = e.getFirstRow();
int column = e.getColumn();
if (column == 1 || column == 2 || column == 3 || column == 4) {
TableModel model = jt.getModel();
float q = (new Float(model.getValueAt(row, 1).toString())).floatValue();
float w = (new Float(model.getValueAt(row, 2).toString())).floatValue();
float t = (new Float(model.getValueAt(row, 3).toString())).floatValue();
float r = (new Float(model.getValueAt(row, 4).toString())).floatValue();
Float tMark = new Float((q * w + t * r) / (w + r));
model.setValueAt(tMark, row, 5);
// Which cells are editable.
// It is only necessary to implement this method
// if the table is editable
public boolean isCellEditable(int row, int col) {
return true; //All cells are editable
public static void main(String[] args) {
NodesTable t = new NodesTable();
} -
I am a new guy for jvmti, I am trying to use jvmti to trace the behaviour of the program. I have several questions:
1. When I catch the step events, I can get the current location of the code, is it possible to map it into source code or byte code?
2. If I want to be informed when the thread call sleep(), notify(), suspend(), resume(), what should I do?
3. By the event-JVMTI_EVENT_MONITOR_CONTENDED_ENTERED, I can easily know when the threads call the primitive "entermonitor" ,however, how can I know when the thread call "exitmonitor"?
4. I am also interested in the context switch of the threads. I can keep checking the step events to get the information. However, it is too costly. Is there any other more suitable way to do that?
Thanks!Hi
1) I don't think u can fill the data in the infocube with out disturbing the data in the infocube , my better approach to fill the historical data for the infocube is
i)Take the back up of the data in another infocube and run the full load.
ii)Don't add the Enhanced fields in the infocube , just create the DS for that enhanced with some primary field in the infocube and then create another infoprovider which has enhanced field and primary field in that infoprovider and on the multiprovider on the top of the infocube(old which has data ) and infoprovider ( which has enhanced field and primary field) and now create the creaete the report on the top of the multiprovider.
Hope u understoodl
3)U have to check which process type is taking long time(let say that DTP is taking long time , then u have to check whether there exists any complex routine , if yes optimize the code ) . This way u have to check for each and every process step which is taking long time.
4) Can u explain 4th question with an example data.
Hope u got it,
Thanx & Regads,
RaviChandra -
URGENT HELP NEEDED FOR GROUP BY
SELECT curve_date, curve_id, curve_type, curve_name, curve_instance, is_simple,
comments, curve_currency, curve_generator, curve_interpolator, holidays,
user_name, rate_index, daycount_code, frequency_code, rate_index_tenor,
time_zone
FROM curve a
WHERE curve_date = (SELECT max(curve_date)
FROM curve b
WHERE b.curve_id = a.curve_id
GROUP BY curve_id)
I have this query ..This query does the FULL TABLE SCAN .....PLEASE Suggest some easier way to optimize this query.....I need it VERY VERY URGENTLY....SELECT curve_date, curve_id, curve_type, curve_name, curve_instance, is_simple,
comments, curve_currency, curve_generator, curve_interpolator, holidays,
user_name, rate_index, daycount_code, frequency_code, rate_index_tenor,
time_zone
FROM curve
WHERE (curve_id, curve_date) IN (SELECT curve_id, max(curve_date)
FROM curve
GROUP BY curve_id)
Be sure you have statistics collected on the table. Anyway, I am not sure that Oracle will not do the FTS for this query even if curve_id and curve_date are indexed. -
URGENT HELP NEEDED FOR TimeStamp
Urgent Millisecond Question....
I have the Java Code which used to work well in Oracle 8 and Sybase ..
When I am using it with Oracle 9.2 it creating a problem...
The code is
final public JDatetime getJDatetime(int columnIndex) throws SQLException {
boolean convertb = Util.needConvertTime();
Timestamp ts=_rs.getTimestamp(columnIndex);
if(ts==null) return null;
Date d= new Date(ts.getTime() + (ts.getNanos()/1000000));
if(convertb) d = Util.ReferenceTZ2Local(d);
return new JDatetime(d);
Now in Oracle 8 Say when I insert a
JDateTime Value as 2003-06-18 16:51:06.89
and
When I retrieve is using above getJDatetime
it get retrieved as
2003-06-18 16:51:06.0
Which is ok since Milliseconds are lost....
Now in Oracle 9
When I use the convert
Date d= new Date(ts.getTime() + (ts.getNanos()/1000000));
It get converted to
Original Value While Inserting -->TimeStamp in JResultSet->2003-06-18 18:15:56.42
Date in JResultSet-->Wed Jun 18 18:15:56 GMT 2003
Date in JResultSet after converting to ReferenceTZ
Wed Jun 18 18:15:56 GMT 2003
DateTime in JResultSet after converting to DateTime6/18/03 6:15:56.840 PM
GMTGETDatetime 6/18/03 6:15:56.840 PM GMT
so if you see
Milliseconnd 42 got converted to 840 NanoSeconds
WHICH IS WRONG
Can anybody help me with it ??
MaheshThe only Adobe program I know that can edit images is Photoshop.
If you have troubles with Google software, you need to post in the appropriate Google forum. -
Urgent help need for login problem B310
Im having a B310, i use veritouch for login purpose. My 4 years kid accidently changed the pass method without my knowledge. After restart, i cant log in. Yet after i try did the forget password in windows 7, it seems cant work. I tried windows password bypass software but shows nopassword set. Unable to get pass via safe mode or f8 as well. Please help me..thanks
Hi raid5, and welcome to the Lenovo User Community!
I'm sorry you are locked out of your B310. Unfortunately the Community Rules do not allow discussion of methods to defeat passwords.
I don't work for Lenovo. I'm a crazy volunteer!
Maybe you are looking for
-
My Adress Book shows strange behavior, cannot search or edit
Hi folks! I recently updated to Lion, also switched my .me to iCloud. At first everything was perfect, now I am experiencing strange behaviours: I am starting to add fotos to my contacts because I like the view in Mail.app where the contact fotos are
-
HT5958 Final cut Pro x and libraries
i cant seem to open a library on my external hard drive. its an airport time capsule . but i didnt use it to back up my mac, just to copy files. its says use a local volume or san? if i need a new external hard drive wich format would i need ?
-
SAP R/3 instance does not match the number of columns in schema error
Hi Gurus, Badly need your help, I am currently on dead end here, I cant' think of any resolution for this error message, I have tried almost everything trying to resolve it. Kindly advise.. error msg:* 1306806 3342 R3S-140113 3/23/2010 9:
-
Drill in feature in SAP BOBj Design Studio to Webi Report
Hello Guru's , do you know if one can drill in to Webi report from Sap BOBJ design studio ..just like dashboard to webi. i cant seem to find it anywhere. P.s: moderator can you move this thread to the right discussion if i posted it in the wrong form
-
Ipad failed to work after software update
I have an ipad 2. after recent software update, was told to connect to itune. when connected to itune was further advise to restore factory settings. however even after going through recovery, encountered failed to recover. what should I do now