Quick debugging and enhancement tips....
Hello ABAP experts!!!!!!!!!!
I am a fresh SAP BI Consultant.I can do little ABAP.Recently,we started getting requirements every day with small and big ABAP codings which needs to be modified....
As I am not a ABAPer....my approach is like....
I print out the program....try to understand it....then go to client...try to understand what he wants....then come back and try writing code on paper...then try this in development...I feel like its takoing long time sometimes and wanted to know professional ABAPers approach to enhancements....because with experience comes effectiveness in approach to solving problems.
Do you have any tips on how I can change my approach to make it faster.....?
Many Thanks!!!!!!!!!!
P Olin.
Moderator message - Unfortunately, this forum is not a place to learn ABAP. I suggest that you talk to your client and have him/her hire an ABAPer - post locked
Similar Messages
-
JDeveloper 10g - Debugging and hotswap
Hi All,
Have recently started to explore the hotswap funtionality in JDev debugging. I've created a simple application with a single EJB3 stateless session bean. Debugging from JDev works great, however when I make any source change while debuging and recompile the hotswap fails with the following error.
The debugger was unable to redefine the recompiled classes.
Unsupported operation: hierarchy change.
What does the message mean and how do I get hotswap working? I'm using the JDK supplied with JDeveloper if that makes any difference.
Cheers,
JThanks, but isn't this for implementing enhancements to JDeveloper only? Is it possible to use this classes in a standalone java application?
-
Different environments created for Debug and Release libraries
Environments created in Debug mode cannot be read by software compiled in release mode. The same is true for the reverse.
Both libraries compiled with VS.NET 2005 (C++). The environment created in Debug mode is slightly different than the library created in the Release mode. I would assume that this is a bug?
__db.001 - no change
__db.002 - DIFFERENT
__db.003 - no change
__db.004 - no change
__db.005 - DIFFERENT
__db.006 - no change
Aeronautical.dbxml - no change
log.0000000001 - no change
The environments are created using the following flags:
// Flags required when opening the XmlDB Environment
m_environmentFlags = DB_CREATE | // If the environment does not exist, create it.
DB_INIT_LOCK | // Initialize the locking subsystem
DB_INIT_LOG | // Initialize the logging subsystem
DB_INIT_MPOOL | // Initialize the cache
DB_INIT_TXN | // Initialize transactions
DB_THREAD; // Ensure Environment is
// free-threaded
The database contains a single XML document.
An attempt to open() fails with the following error message:
DbEnv::open: No such file or directoryHey Ron,
Thanks for answering so quickly. Having release and debug builds able to manipulate the same environments is a requirement of convenience. Our project builds both release and debug versions of our software and distributes both versions to the development team daily. The team is encouraged and expected to run both debug and release builds to test their contributions and because the system opens the database (which is distributed with the build) upon startup, one of the two will always fail to load. That leaves us with two obvious solutions/workarounds. The first being to distribute the build with 2 environments and ensure that the build chooses the correct environment based on whether it is debug or release. The second is to rebuild the debug library without the --enable-diagnostic switch.
We have no immediate need to enable the diagnostic information (that I am aware of...in fact I don't even know what types of checks are put in that would be helpful).
Do you have an alternative solution that others have used as a work around for this? -
Customization and Enhancment of ICSS B2B 5.0 (Java )
Hi,
I have to customize and enhance the functionality of CRM 5.0 ICSS B2B web front end.
i studied the ISA50DevExtGuideConcepts21.pdf document,according to the document i am using NWDS for development.
I am following the below mentioned methodology.
1 > Downloaded NWDS 7.0
2> Configured the NWDS to point to remote j2ee engine
(WindowPreferencesSAP J2ee Engine
Message server host
Message Server Port )
3> Got the latest source code i.e sap.comcrmicsswebicss_b2b.war
extracted the source code.
4> created An Enterprise Application Project
5> Created Web Module Project
6> Added the created Web Module Project into the Enterprise Application Project
7> Followed the 1017761 note to deploy the standard application with different name
8> Generated the custom_app.ear file.(J2EE Explorer Perspective)
9> Deployed the application using NWDS deploy option.(J2EE Explorer Perspective custom_app.earright click u will have option for deploy onto j2ee engine--asks SDM password)
when i try to access the deployed custom application using
http://host:port/custom_app/init.do
i am getting the following error
Application error occurred during request processing.
Details: Error [javax.servlet.ServletException: Initialization of Extended Configuration Management failed.].
Exception id: [0014C265B0070079000006E900006B000004310E29004C31]
when i access the http://host:port/custom_appt/admin/index.jsp
i am getting an empty Menu page .no links for XCM admin
SAP support suggested me to apply the patch.my java stack is at SP11 and
in sync with 979884 note patch also.
but still getting the error.
here my question is am i following proper methodology or u find any gaps in the procedure.
i studied in the ISA50DevExtGuideConcepts21.pdf some where they said
about the enabling the debugging and about DTR ,if find any details do let me know asap.
thanks
SureshHi Pranay
If you are checking this mail.
I have the same problem, and I also have SAP-CRMDIC 5.0 SP6 (1000.5.0.6.0.20060914084317) deployed. Could you please advise why am I not able to see XCM config? or the whole of the admin.
I am using my custom application and deployed the ear through NWDS.
Points Gurenteed.
Thanks
Gaurav Sahai -
Abap Debug and Functional Specification to Funcitonal Analist.
Dear friends,
Does anyone has some tips to guide a functional to construct a good Functional Specification and also tips to functional do some easy debugs ?
best regards
AleHi Alessandro .,
while preparing Functional Spec , Ensure that all the Business requirements is coverd .
Be clear about the screens that are required for the Object . USe F1 key and give clear Idea about the Technical name & Field label .
ENsure the Test data . Possible deviations .
For Debugging Use /h and F5 for step by step Exctuion . Identify what are the steps you want to track put some break point ( place the Cursur in the line and hit Debug Button , Save once) .
hope this helps You .
thanks
Sreenivas
Edited by: Sreenivas Reddy Dommata on Aug 27, 2008 7:27 AM -
Hi!
I have a problem developing a midlet for MIDP2.0
In emulators, everything works fine but I observed some funny behavoir when running that midlet on the mobile phone. Anyway, I am not asking for a solution for that problem, but for a general one:
What is in your opinion the best way to debug the midlet on the mobile phone (not in emulator because it works there...)? How do you write debug messages? Is there a possibility to write something into some kind of log file? I know there is no access to the file system in general, but can I maybe wreite something into a file which is in the JAR file? Please post some example code if there is any possibility to do this =)
Cheers!You can write the data into the RMS, and pack a second MIDlet in the suite that allows you to read the data.
A couple of other options are displaying it on screen (good for quick fixes and catching small bugs), or sending the data over the network and logging it on the server (in theory the best solution, but in practice if the MIDlet is not networked to begin with you might end up having more bugs and wierd behaviour from the network code than the application you are trying to debug).
shmoove -
Difference between system debugging and update debugging
hai guru's can any one tell the difference between system debugging and update debugging
thanx in advance
afzalhi,
System Debugging
If you set this option, the Debugger is also activated for system programs
(programs with status S in their program attributes). When you save breakpoints, the System Debugging setting is also saved.
Update Debugging
Update function modules do not run in the same user session as the program that is currently running in the ABAP Debugger.
These function modules are therefore not included in debugging.
Only if you select the Update Debugging option can you display and debug them after the COMMIT WORK.
For debugging tutorial:
http://help.sap.com/saphelp_erp2005vp/helpdata/en/5a/4ed93f130f9215e10000000a155106/frameset.htm
http://www.sapdevelopment.co.uk/tips/debug/debughome.htm
http://www.sap-basis-abap.com/sapab002.htm
<b>Reward points</b>
Regards -
Hi all,
Can i use a break-point into ENHANCEMENT-POINT?
i can't debug into ENHANCEMENT-POINT.
Anybody help me??
regards,I put a break-point in the code, but the system don't stop.
See the exemple:
ENHANCEMENT-POINT WE_AUS_BETS_02 SPOTS ES_SAPLEINR.
ENHANCEMENT 13 /CWM/APPL_MM_SAPLEINR. "active version
INCLUDE /CWM/MOD_LEINRF2B_1. "CWM CWEK000072
break marcelo_10.
if sy-tcode = 'MB01'.
if EKKO-WAERS NE 'BRL' and
( ekko-bsart NE 'ZI' and
ekko-bsart NE 'IP' ).
CALL FUNCTION 'CONVERT_TO_LOCAL_CURRENCY'
EXPORTING
DATE = I_BLDAT
FOREIGN_AMOUNT = XEBEFU-NETWR "Nettower
FOREIGN_CURRENCY = EKKO-WAERS
LOCAL_CURRENCY = T001-WAERS
TYPE_OF_RATE = KURSTYP
IMPORTING
LOCAL_AMOUNT = XEBEFU-NETWR.
endif.
endif.
ENDENHANCEMENT. -
I cannot open my firefox broswer. The message box appeared that said a problem caused the program to stop working correctly. Windows will close the program and notify you if a solution is available. Under that there are debug and close program buttons.
JackieMars71 I would recommend reviewing your installation log files to determine if there are any errors during the installation process. You can find information on how to locate and interpret your installation log files at Troubleshoot install issues with log files | CC - http://helpx.adobe.com/creative-cloud/kb/troubleshoot-install-logs-cc.html. You are welcome to post any specific errors you discover to this discussion.
-
my iphone 3gs is showing errore wen i turn on debug and some apps will open and then close
There's an apple store in my city but it is about a 20 minute drive and I do not have apple care. Do you think they would still help me?
-
How access my files/ folder from Quick Office and from other applications
Hi
I was a HTC user, and recently i decided to purchase the iphone 3Gs from Rogers and I end up with a frustration and helpless. First thing that I notice that there is no built-in application for editing the Excel & Word documents. Then I purchased quick office and realize that there is no way to copy over the documents to iphone. Way the quick office wants to upload the file is not workable because it offer to upload one by one.
Then I purchased another application WIFI FPT and i was very happy that now I can upload my folders very quickly and then I end up again with great frustration that quick office can’t see that folders that I upload with FTP.
I am very disappointed and frustrated, if apple want to make it really workable for business then they have to create a users area/space where users can copy their stuff quickly and all application can navigate in that area. So in this way we can access all of our data from any application.
I hope that some one will take it seriously and help me/us to work with this phone. I never spent a penny for HTC to work with my documents and after I purchased this dam thing I spend almost $40 for all different kind of application and I am still unable to use it for my daily work.Research before the purchase would have helped. This has never been a feature of iphone. You have always needed an App in order to accomplish this.
You can leave feedback for Apple at:
http://www.apple.com/feedback/iphone.html -
How to implement Quick Query and Saved Searches in ADF?
We are using 11gR2 ADF.
The requirement is to enable Quick Search and save the Searches.
In the Oracle ADF documentation, it is mentioned that
- Create a view with view criteria named.
- In the .jspx drag and drop the view criteria and Select Quick Query
Upon doing the above, we see that a Search panel is getting created, but with a message 'No Search Fields Added'.
In the named view criteria, Under 'UI Hints' we have set
-- execution mode as Both
-- Search region mode is Basic
-- Show Operators in Basic
Under 'Criteria Definition'
the attributes are added in a group with OR condition.
Thanks for your reply. Oracle ADF developer guide does not help!!
If you have any other documentation that helps in implementing this Quick Query and Saved Search, your help is greatly appreciated.Set the following on your af:query component
SaveQueryMode = hidden
ModeChangeVisible = false
This should work for you ..
Regards, -
How to debug and find the exact constraint violation error
{122712 14:22:36:ErrorCode -1 with ErrorMessage as ORA-00001: unique constraint (OPS$CMS.PK_TB_ML_EXER_UPLOAD) violated has occured for [SSO16063259009], [CMSCOST_USER] pk_xop_subsales.pr_process_exer }
{PROCEDURE pr_process_exer(
p_voucher_num tb_xop_order_manager_t.voucher_num%TYPE,
p_status_type tb_xop_order_manager_t.status_type%type,
p_dest tb_xop_order_manager_t.dest%type,
p_reference_key tb_xop_order_manager_t.reference_key%type,
p_seq_num tb_xop_order_manager_t.seq_num%type,
p_return_code tb_xop_order_manager_t.return_code%type,
p_reason_desc tb_xop_order_manager_t.reason_desc%type,
p_activity_qty tb_xop_order_manager_t.activity_qty%type,
p_leaves_qty tb_xop_order_manager_t.leaves_qty%type,
p_exec_price tb_xop_order_manager_t.exec_price%type,
p_current_status tb_xop_order_manager_t.current_status%type,
p_err_cur OUT ref_cursor)
IS
CURSOR get_order_dtls(v_voucher_num tb_xop_order_manager_t.voucher_num%type)
IS
SELECT *
FROM tb_xop_order_manager_t
WHERE voucher_num = v_voucher_num;
CURSOR get_mail_cd(v_opt_num OPTIONEE.opt_num%TYPE) IS
SELECT mail_cd, sp_mail_cd
FROM XOP_OPTIONEE
WHERE opt_num = v_opt_num;
cursor get_opt_dtls(v_opt_num OPTIONEE.opt_num%TYPE) IS
select
SUBSTR(trim(O.name_first) || ' ' || trim(O.name_mi) || ' ' ||
trim(O.name_last), 1, 35) p_name,
SUBSTR(O.address1, 1, 35) opt_addr1,
SUBSTR(O.address2, 1, 35) opt_addr2,
SUBSTR(O.address3, 1, 35) opt_addr3,
SUBSTR(O.address4, 1, 35) opt_addr4,
SUBSTR(O.address5, 1, 35) opt_addr5,
SUBSTR(O.address6, 1, 35) opt_addr6,
SUBSTR(trim(O.city) || ' ' || trim(O.state) || ' ' ||
trim(O.zip) || ' ' || trim(O.country), 1, 35) city_state_zip_country,
trim(O.city) city,
trim(O.state) state,
trim(O.zip) zip,
trim(O.country) country
from optionee o
where o.opt_num = v_opt_num;
--CQ:PCTUP00210726- Added wire instructions audit for deleted wire info.
CURSOR c_wire_instruction (
in_wire_seq_no TB_XOP_WIRE_INSTRUCTIONS.wire_seq_no%TYPE ) IS
SELECT ml_brok_acct_num,
ssn,
plan_num,
instr_type,
aba_routing_num,
swift_routing_code,
bank_name,
bank_acct_num,
name_on_account,
bank_addr_1,
bank_addr_2,
bank_addr_3,
city,
state,
country,
zip,
bank_ident_num,
addtl_info
FROM TB_XOP_WIRE_INSTRUCTIONS
WHERE wire_seq_no = in_wire_seq_no
UNION
SELECT ml_brok_acct_num,
ssn,
plan_num,
instr_type,
aba_routing_num,
swift_routing_code,
bank_name,
bank_acct_num,
name_on_account,
bank_addr_1,
bank_addr_2,
bank_addr_3,
city,
state,
country,
zip,
bank_ident_num,
addtl_info
FROM TB_XOP_WIRE_INSTRUCTIONS_AUDIT
WHERE wire_seq_no = in_wire_seq_no;
CURSOR c_order_qty IS
SELECT order_qty
FROM tb_xop_order_manager
WHERE voucher_num = p_voucher_num;
v_order_qty tb_xop_order_manager.order_qty%TYPE;
v_wire_instruction c_wire_instruction%ROWTYPE;
v_order_dtls get_order_dtls%rowtype;
v_opt_dtls get_opt_dtls%rowtype;
v_settle_dt tb_ml_exer_upload.settle_dt%type;
v_cusip_num corp.cusip_num%type;
v_err_cd number(12):=0;
v_err_msg varchar2(4000);
v_compy_nme tb_fc_Compy.compy_nme%type;
v_ml_sec_num tb_fc_compy.ml_sec_num%type;
v_mail_cd xop_optionee.mail_cd%type;
v_count1 PLS_INTEGER := 0;
v_sum_activity_qty tb_xop_order_manager_t.activity_qty%TYPE;
v_transact_no PLS_INTEGER;
v_ivr_plan_num tb_fc_compy.ivr_plan_num%TYPE;
wait_for_more EXCEPTION;
exceeds_order_qty EXCEPTION;
--Added for CQ# PCTUP00481233
v_sub_totfee number;
v_sub_fixedfee1 number;
v_sub_fixedfee2 number;
v_sub_fixedfee3 number;
v_sub_secfee number;
v_sub_feenum number;
--Added for CQ# PCTUP00481233
v_fixedfee1 tb_xop_order_manager_t.fixed_fee1%TYPE; --SPIF# 43161- variable to hold fixed fee1
BEGIN
OPEN c_order_qty;
FETCH c_order_qty INTO v_order_qty;
CLOSE c_order_qty;
dbms.output.put_line('completed1');
IF v_order_qty <> p_activity_qty THEN
dbms.output.put_line('completed2');
IF p_status_type = 'EO' AND v_order_qty < p_activity_qty THEN
RAISE exceeds_order_qty;
dbms.output.put_line('completed3');
ELSIF p_status_type = 'EO' AND v_order_qty > p_activity_qty THEN
-- Partial Execution
INSERT INTO tb_xop_hold_multi_orders
( voucher_num
, reference_key
, seq_num
, return_code
, reason_desc
, status_type
, activity_qty
, leaves_qty
, exec_price
, current_status
, waiting
,activ_dt )
VALUES
( p_voucher_num
, p_reference_key
, p_seq_num
, p_return_code
, p_reason_desc
, p_status_type
, p_activity_qty
, p_leaves_qty
, p_exec_price
, p_current_status
, 'Y'
,SYSTIMESTAMP );
dbms.output.put_line('completed4');
ELSE
IF p_status_type = 'BE' THEN
SELECT COUNT(1) INTO v_count1
FROM tb_xop_hold_multi_orders
WHERE voucher_num = p_voucher_num;
dbms.output.put_line('completed5');
IF v_count1 > 0 THEN
INSERT INTO tb_xop_hold_multi_orders
( voucher_num
, reference_key
, seq_num
, return_code
, reason_desc
, status_type
, activity_qty
, leaves_qty
, exec_price
, current_status
, waiting
,activ_dt)
VALUES
( p_voucher_num
, p_reference_key
, p_seq_num
, p_return_code
, p_reason_desc
, p_status_type
, (-1) * p_activity_qty
, p_leaves_qty
, p_exec_price
, p_current_status
, 'Y'
,SYSTIMESTAMP );
UPDATE tb_xop_hold_multi_orders
SET waiting = 'Y'
WHERE voucher_num = p_voucher_num;
dbms.output.put_line('completed6');
END IF;
END IF;
END IF;
dbms.output.put_line('completed7');
SELECT SUM(NVL(activity_qty,0)) INTO v_sum_activity_qty
FROM tb_xop_hold_multi_orders
WHERE waiting = 'Y'
AND voucher_num = p_voucher_num;
IF v_sum_activity_qty > 0 THEN
IF v_sum_activity_qty <> v_order_qty THEN
RAISE wait_for_more;
ELSE
-- final order in the partial execution; complete the process
UPDATE tb_xop_hold_multi_orders
SET waiting = 'N'
, process_dt = SYSDATE
WHERE voucher_num = p_voucher_num;
END IF;
END IF;
END IF;
UPDATE tb_xop_order_manager_t
SET activ_dt = TO_CHAR( SYSDATE, 'YYYY-MM-DD HH24:MI:SS' ) || '.000'
, dest = p_dest
, reference_key = p_reference_key
, seq_num = p_seq_num
, return_code = p_return_code
, reason_desc = p_reason_desc
, status_type = p_status_type
, activity_qty = v_order_qty --p_activity_qty
, leaves_qty = 0 --p_leaves_qty
, exec_price = p_exec_price
WHERE voucher_num = p_voucher_num;
dbms.output.put_line('completed8');
* SPIF# 43161- Update of current status to PO moved at the end, same as how PROD works.
IF (p_status_type = 'EO') THEN
BEGIN
select cusip_num
into v_cusip_num
from corp;
EXCEPTION
WHEN NO_DATA_FOUND THEN
SELECT cusip_num
INTO v_cusip_num
FROM tb_xop_espp_compy
WHERE compy_acronym = replace(replace(user,'CMS'),'_USER');
WHEN OTHERS THEN
NULL;
END;
select compy_nme,ml_sec_num, ivr_plan_num
into v_compy_nme,v_ml_sec_num, v_ivr_plan_num
from tb_fc_compy
where compy_acronym = replace(replace(user,'CMS'),'_USER')
UNION ALL
select compy_nme, je_ml_security_number, ivr_plan_num
from tb_xop_espp_compy
where compy_acronym = replace(replace(user,'CMS'),'_USER');
-- where ivr_plan_num = replace(substr(p_voucher_num,1,7),'SSO','XOP');
open get_order_dtls(p_voucher_num);
FETCH get_order_dtls INTO v_order_dtls;
v_settle_dt := fn_xop_bankopen_bizday(TRUNC(v_order_dtls.exer_date + 1));
v_settle_dt := fn_xop_bankopen_bizday(TRUNC(v_settle_dt + 1));
v_settle_dt := fn_xop_bankopen_bizday(TRUNC(v_settle_dt + 1));
FOR c_mail_cd IN get_mail_cd(v_order_dtls.opt_num)
LOOP
v_mail_cd := c_mail_cd.mail_cd;
-- Do we need to get sp_mail_cd and overlay with the sp_mail_cd in order_manager_t???
END LOOP;
OPEN get_opt_dtls(v_order_dtls.opt_num);
FETCH get_opt_dtls INTO v_opt_dtls;
CLOSE get_opt_dtls;
v_fixedfee1 := nvl(v_order_dtls.fixed_fee1, 0);
* SPIF# 43161- atleast one handling fee per day of transaction
v_fixedfee1 := pk_xop_enh_exerupdate.chrg_tranxfixed_fee(v_fixedfee1,
v_order_dtls.symbol,
v_order_dtls.corp_acronym,
v_order_dtls.opt_num);
--Insert into tb_ml_exer_upload
--Added for CQ# PCTUP00481233
Pk_Xop_Transactmodel.GET_FEE(v_order_dtls.GROUP_ID,v_order_dtls.SVC_ID,'SQ',v_order_dtls.opts_exer,
round(v_order_dtls.exec_price, 4),v_sub_totfee,v_sub_fixedfee2,v_sub_fixedfee1,
v_sub_fixedfee3,v_sub_secfee,v_sub_feenum,lpad(v_order_dtls.ssn,9,0));
v_order_dtls.sec_fee:=v_sub_secfee;
UPDATE tb_xop_order_manager_t
SET sec_fee=v_sub_secfee
WHERE voucher_num = p_voucher_num;
dbms.output.put_line('completed8');
--- End CQ # PCTUP00481233
INSERT INTO tb_ml_exer_upload
(exer_num,exer_seq,
exer_dt, written_flag, backout_flag, output_line,
je_flag, opts_exer,
tot_tax,shrs_sold,comm_value,tot_fee,
mkt_prc,exer_type, soc_sec,
name_first, name_mi,
name_last,check_addr_1,check_addr_2,check_addr_3,
check_addr_4,check_addr_5,city,state,zip,country,
city_state_zip_country,
p_name,opt_addr1,opt_addr2,opt_addr3,opt_addr4,
opt_addr5,opt_addr6,
settle_dt,send_to_citibank_flag,
dom_chek_distr,foreign_currency_code,
distribution_method,wire_seq_no,
cusip_num, ml_retail_account,multi_curr_handling_fee,
ml_sec_num, corp_name,upd_optionee_addr,
outbound_flag, -- make it N
corp_symbol,taxwire_approve, -- make it not applicaplabe
exersource,
mail_cd, sp_mail_cd,
backup_withholding,
user_id,
acct_num_othr)
VALUES(v_order_dtls.exer_num,0,v_order_dtls.exer_date,'N','N',NULL,
-- PG 12/12/05 Changed to populate the je_flag based on dom_chek_distr 'D',
-- PG 12/16/05 JE should not be generated for international checks.. So 'Y' always
'Y', --je_flag
v_order_dtls.opts_exer,0,--total tax will be 0.
v_order_dtls.opts_exer, --shrs_sold,
v_order_dtls.comm_value,
--SPIF# 43161- replaced nvl(v_order_dtls.fixed_fee1, 0) with v_fixedfee1
v_fixedfee1 + nvl(v_order_dtls.fixed_fee3,0) + nvl(v_order_dtls.sec_fee,0), --v_order_dtls.fees_amt,
round(v_order_dtls.exec_price, 4),v_order_dtls.exer_type,
LPAD(v_order_dtls.ssn,9,'0'), --v_order_dtls.ssn, Modified by Suresh on 02/08/07 for SPIF # 37210
v_order_dtls.name_first,v_order_dtls.name_mi,v_order_dtls.name_last,
v_order_dtls.check_addr_1,v_order_dtls.check_addr_2,v_order_dtls.check_addr_3,
v_order_dtls.check_addr_4,v_order_dtls.check_addr_5,nvl(v_order_dtls.city,v_opt_dtls.city),
nvl(v_order_dtls.state,v_opt_dtls.state),nvl(v_order_dtls.zip,v_opt_dtls.zip),
nvl(v_order_dtls.country,v_opt_dtls.country),
SUBSTR(nvl(v_order_dtls.city||v_order_dtls.state||v_order_dtls.zip||v_order_dtls.country,
v_opt_dtls.city_state_zip_country),1,34), -- COLUMN LENGTH MAX IS 35
v_opt_dtls.p_name,v_opt_dtls.opt_addr1,v_opt_dtls.opt_addr2,v_opt_dtls.opt_addr3,
v_opt_dtls.opt_addr4,v_opt_dtls.opt_addr5,v_opt_dtls.opt_addr6,
v_settle_dt,decode(v_order_dtls.distribution_method,'W','Y','D','Y','C','Y','D'),
v_order_dtls.dom_chek_distr,v_order_dtls.foreign_currency_code,
v_order_dtls.distribution_method,v_order_dtls.wire_seq_no,
v_cusip_num,v_order_dtls.acct_num,v_order_dtls.multi_curr_handling_fee,
-- nvl(fn_get_sec_num(replace(substr(p_voucher_num,1,7),'SSO','XOP'),v_order_dtls.symbol),v_ml_sec_num),
nvl(fn_get_sec_num(v_ivr_plan_num, v_order_dtls.symbol),v_ml_sec_num),
v_compy_nme,v_order_dtls.upd_optionee_addr,
'N', --'N' is for outbound flag.
v_order_dtls.symbol,'D', --'D' for taxwires disabled
'S', -- 'S' for source being subsequent sale.
v_mail_cd, --need to get mail_Cd??
v_order_dtls.sp_mail_cd,v_order_dtls.backup_withholding,
user,v_order_dtls.acct_num_othr);
IF (NVL(v_order_dtls.wire_seq_no,0) > 0) THEN
OPEN c_wire_instruction(v_order_dtls.wire_seq_no);
FETCH c_wire_instruction INTO v_wire_instruction;
CLOSE c_wire_instruction;
INSERT INTO TB_XOP_TRANSACT_WIRE_INSTR
(user_id, exer_num, wire_seq_no, ml_brok_acct_num, ssn,
plan_num, instr_type, aba_routing_num,
swift_routing_code, bank_name, bank_acct_num,
name_on_account, bank_addr_1, bank_addr_2, bank_addr_3,
city, state, country, zip, bank_ident_num, addtl_info )
VALUES
(USER,v_order_dtls.exer_num, v_order_dtls.wire_seq_no,
v_wire_instruction.ml_brok_acct_num, v_wire_instruction.ssn,
v_wire_instruction.plan_num, v_wire_instruction.instr_type, v_wire_instruction.aba_routing_num,
v_wire_instruction.swift_routing_code, v_wire_instruction.bank_name, v_wire_instruction.bank_acct_num,
v_wire_instruction.name_on_account, v_wire_instruction.bank_addr_1, v_wire_instruction.bank_addr_2,
v_wire_instruction.bank_addr_3, v_wire_instruction.city, v_wire_instruction.state, v_wire_instruction.country, v_wire_instruction.zip,
v_wire_instruction.bank_ident_num, v_wire_instruction.addtl_info);
dbms.output.put_line('completed10');
END IF;
/* PG 01/05/06 Call the check conversion only for international checks and wires */
IF v_order_dtls.dom_chek_distr = 'N' AND v_order_dtls.distribution_method IN ('W', 'D', 'C') THEN
/* PG 12/20/05 To process subsequent sales with wire or foreign currency distribution */
v_transact_no := 88;
pk_xop_citibank_forex.pr_cashconversion_ins_request( v_order_dtls.acct_num
, LPAD(v_order_dtls.ssn,9,'0') --v_order_dtls.ssn, Modified by Suresh on 02/15/07 for SPIF # 37210
, v_order_dtls.distribution_method
, v_order_dtls.foreign_currency_code
, v_order_dtls.wire_seq_no
, ROUND((v_order_dtls.opts_exer * round(v_order_dtls.exec_price, 4)),2)
- ROUND(v_order_dtls.comm_value,2)
- ROUND(nvl(v_order_dtls.fixed_fee1,0) + nvl(v_order_dtls.fixed_fee3,0) + nvl(v_order_dtls.sec_fee,0),2)
- nvl(v_order_dtls.multi_curr_handling_fee,0)
- nvl(v_order_dtls.backup_withholding,0) -- net proceeds
, v_order_dtls.multi_curr_handling_fee --handling fee
--Modified by Bhaskar/Suresh on 03/02/2006 --, v_order_dtls.login_name
, CASE v_order_dtls.login_name WHEN 'CLIENT/' THEN v_order_dtls.login_name||'SSO' ELSE v_order_dtls.login_name||'/SSO' END
, v_transact_no -- transact_no as place holder for exer_type 88
, v_order_dtls.check_addr_1
, v_order_dtls.check_addr_2
, v_order_dtls.check_addr_3
, v_order_dtls.check_addr_4
, v_order_dtls.upd_optionee_addr
, v_order_dtls.city
, v_order_dtls.state
, v_order_dtls.zip
, v_order_dtls.country
, v_order_dtls.login_ipaddress
, v_order_dtls.fcnum
, v_order_dtls.opt_num
, v_settle_dt,
p_exer_num => v_order_dtls.exer_num
END IF;
COMMIT;
close get_order_dtls;
END IF;
* SPIF# 43161- Update to current status into PO is moved to this part, same as PROD.
UPDATE tb_xop_order_manager_t
SET exec_dttime = decode(p_status_type,'EO',to_char(sysdate,'DD-MON-YYYY HH24:mi:ss'),null)
, exer_date = TRUNC(SYSDATE)
, cancel_dttime = decode(p_status_type,'CX',to_char(sysdate,'DD-MON-YYYY HH24:mi:ss'),'UR',to_char(sysdate,'DD-MON-YYYY HH24:mi:ss'),null)
, current_status = 'PO'
, sum_status = decode(p_status_type,'EO','X','C')
, sum_stat_dttime = SYSDATE
WHERE voucher_num = p_voucher_num;
v_err_cd := sqlcode;
v_err_msg := sqlerrm;
open p_err_cur for select v_err_cd err_code,v_err_msg err_msg from dual;
EXCEPTION
dbms.output.put_line('completed200');
/* PG 02/10 handled 'partial fill order' exception */
when wait_for_more then
v_err_cd := 0;
v_err_msg := 'ORA-0000: normal, successful completion';
pr_xop_log_errors('Partially filled; Waiting for more - Activity qty:' || to_char(v_sum_activity_qty)|| ' pk_xop_subsales.pr_process_exer');
open p_err_cur for select v_err_cd err_code,v_err_msg err_msg from dual;
when exceeds_order_qty then
v_err_cd := sqlcode;
v_err_msg := sqlerrm;
open p_err_cur for select v_err_cd err_code,v_err_msg err_msg from dual;
pr_xop_log_errors('Activity quantity exceeded the Order_qty - Activity qty: ' || to_char(p_activity_qty) || ' pk_xop_subsales.pr_process_exer');
when others then
v_err_cd := sqlcode;
v_err_msg := sqlerrm;
open p_err_cur for select v_err_cd err_code,v_err_msg err_msg from dual;
pr_xop_log_errors('ErrorCode '||SQLCODE||' with ErrorMessage as '||SQLERRM||' has occured for '||user||'pk_xop_subsales.pr_process_exer');
dbms.output.put_line('completed125');
END pr_process_exer;
Hi friends, any1 help me out how to define the ref-cursor in declaration section, and how to find at what situation the constraint error occurred..956684 wrote:
Hi,.
Friends plz help me out ..how to debug and find the exact position of the constraint violation..thank you for the help..There isn't a way to trace it unless you have caught the exception raised.
As a way to start the debug, you will have to monitor
1. All DML's against the Table on which you have constraint. More specifically, the DML's that act on the column you have constraint on.
2. Use Exception Handling, to log the Error and the data that causes the constraint to fail.
3. Do not forget to monitor the Triggers, if they are used, that would write some data into the column you have constraint on.
Or
Another way to trace is:
select *
from user_source
where lower(text) like '%your_table_name%';
order by type, name, line;Look at the lines, exclude that are in Declaration or in SELECT statements and target the DML's.
Looking at the un-formatted code you posted, this statement looks like a culprit.
INSERT INTO tb_ml_exer_upload
(exer_num,exer_seq,
exer_dt, written_flag, backout_flag, output_line,
je_flag, opts_exer,
tot_tax,shrs_sold,comm_value,tot_fee,
mkt_prc,exer_type, soc_sec,
name_first, name_mi,
name_last,check_addr_1,check_addr_2,check_addr_3,
check_addr_4,check_addr_5,city,state,zip,country,
city_state_zip_country,
p_name,opt_addr1,opt_addr2,opt_addr3,opt_addr4,
opt_addr5,opt_addr6,
settle_dt,send_to_citibank_flag,
dom_chek_distr,foreign_currency_code,
distribution_method,wire_seq_no,
cusip_num, ml_retail_account,multi_curr_handling_fee,
ml_sec_num, corp_name,upd_optionee_addr,
outbound_flag, -- make it N
corp_symbol,taxwire_approve, -- make it not applicaplabe
exersource,
mail_cd, sp_mail_cd,
backup_withholding,
user_id,
acct_num_othr)
VALUES(v_order_dtls.exer_num,0,v_order_dtls.exer_date,'N','N',NULL,
-- PG 12/12/05 Changed to populate the je_flag based on dom_chek_distr 'D',
-- PG 12/16/05 JE should not be generated for international checks.. So 'Y' always
'Y', --je_flag
v_order_dtls.opts_exer,0,--total tax will be 0.
v_order_dtls.opts_exer, --shrs_sold,
v_order_dtls.comm_value,
--SPIF# 43161- replaced nvl(v_order_dtls.fixed_fee1, 0) with v_fixedfee1
v_fixedfee1 + nvl(v_order_dtls.fixed_fee3,0) + nvl(v_order_dtls.sec_fee,0), --v_order_dtls.fees_amt,
round(v_order_dtls.exec_price, 4),v_order_dtls.exer_type,
LPAD(v_order_dtls.ssn,9,'0'), --v_order_dtls.ssn, Modified by Suresh on 02/08/07 for SPIF # 37210
v_order_dtls.name_first,v_order_dtls.name_mi,v_order_dtls.name_last,
v_order_dtls.check_addr_1,v_order_dtls.check_addr_2,v_order_dtls.check_addr_3,
v_order_dtls.check_addr_4,v_order_dtls.check_addr_5,nvl(v_order_dtls.city,v_opt_dtls.city),
nvl(v_order_dtls.state,v_opt_dtls.state),nvl(v_order_dtls.zip,v_opt_dtls.zip),
nvl(v_order_dtls.country,v_opt_dtls.country),
SUBSTR(nvl(v_order_dtls.city||v_order_dtls.state||v_order_dtls.zip||v_order_dtls.country,
v_opt_dtls.city_state_zip_country),1,34), -- COLUMN LENGTH MAX IS 35
v_opt_dtls.p_name,v_opt_dtls.opt_addr1,v_opt_dtls.opt_addr2,v_opt_dtls.opt_addr3,
v_opt_dtls.opt_addr4,v_opt_dtls.opt_addr5,v_opt_dtls.opt_addr6,
v_settle_dt,decode(v_order_dtls.distribution_method,'W','Y','D','Y','C','Y','D'),
v_order_dtls.dom_chek_distr,v_order_dtls.foreign_currency_code,
v_order_dtls.distribution_method,v_order_dtls.wire_seq_no,
v_cusip_num,v_order_dtls.acct_num,v_order_dtls.multi_curr_handling_fee,
-- nvl(fn_get_sec_num(replace(substr(p_voucher_num,1,7),'SSO','XOP'),v_order_dtls.symbol),v_ml_sec_num),
nvl(fn_get_sec_num(v_ivr_plan_num, v_order_dtls.symbol),v_ml_sec_num),
v_compy_nme,v_order_dtls.upd_optionee_addr,
'N', --'N' is for outbound flag.
v_order_dtls.symbol,'D', --'D' for taxwires disabled
'S', -- 'S' for source being subsequent sale.
v_mail_cd, --need to get mail_Cd??
v_order_dtls.sp_mail_cd,v_order_dtls.backup_withholding,
user,v_order_dtls.acct_num_othr);What is the Table structure of tb_ml_exer_upload and what columns do you have constraints on?
Which column of the table tb_ml_exer_upload is your Primary Key (because constraint name mentions pk_tb_ml_exer_upload)?
Edited by: Purvesh K on Jan 4, 2013 12:57 PM -
I just purchased a software upgrade to OSX Lion. I received an e-mail that says, "To install your software, you simply launch the Mac App Store, click "Redeem"• found under Quick Links and enter your content code(s). How do I "launch the Mac App Store?"
Assuming you are running OS X 10.6.6 or later (10.7.x Lion, 10.8.x Mountain Lion or 10.9.x Mavericks), go to the Apple Menu (top left-hand corner of the screen)>App Store and it should become clear from there.
-
After upgrading to version 11.0.4.4 I get a "Itunes has stopped working" message when I try to start a movie on my PC. I have updated Quick time and previous version of Itunes worked great.
One thing is for sure, and that is if the only page i visit is the Google homepage (not logged in) or this site (mozilla forum), the problem does not occur, ever. I can't make it happen.
If i visit yahoo.com (not logged in) (or ighome.com, logged in), as examples, it happens every time.
Maybe you are looking for
-
Changing ken burns on only one photo
Hi all, I have a slideshow which I autogenerated the ken burns effect. I have one photo that constantly gets clipped and you can't see it. How can I turn off the ken burns for that ONE photo....? I have searched the forum...I tried the auto kb's in s
-
Hi just installed a few new AU's Logic now does not load, it just stays stuck on the loading screen with "Updating information about audio unit plug-ins" so tried removing all instances of the newly loaded AU's and associated files and restarting and
-
I am running Photoshop Elements 9.0.3. Purchased via educational license. I am planning to either buy a new computer or re-install Micorosoft Windows 7. In either case, how do I transfer my Photoshop to the new situation?
-
Correct solution for login loop on admin account
Hello, Can any mac experts help me find the correct solution for my log in loop problem. I have been using my macbook pro for about six years without any touble, its a 2.16 GHz intel core 2 duo running OS X 10.6.8. Yesterday when I went to log in to
-
Can't install CC Desktop Windows 7
Hello everyone. I have a problem. I reinstall windows 7 everthing is ok but I can't install cc desktop. Pls help.