How to assign preceeding zeros in table
Hai experts,
i have problem please help
my problem is i created a screen using module pool programing so their is one field in which if i enter any 'value' then it save in ddic table as 'oooovalue'
example if i enter as 1234 then in table it should save as 00001234.
thans in advance.
rajesh
Use the FM <b>CONVERSION_EXIT_ALPHA_INPUT</b>
ALPHA conversion is used especially with account numbers. During conversion from the external to the internal format, the system checks to see if input in the INPUT field is purely numeric, that is, if this input consists only of numbers, possibly with spaces before and after them. If this is the case, then the number string is inserted right- justified in the display field OUTPUT and all spaces to the left of the value are filled with zeroes ('0'). If the input is not purely numeric, it is inserted in the display field from left to right and all extra spaces are filled with blanks.
Example:
(Input field and output field are both eight characters in length)
1. '1234 ' --> '00001234'
2. 'ABCD ' --> 'ABCD '
3. ' 1234 ' --> '00001234'
Reward Points if useful.
Similar Messages
-
How to assign Values to nested table and pass as parameter to procedure?
How to assign Values to nested table and pass as parameter to procedure?
Below is the Object and its type
create or replace type test_object1 as object
val1 varchar2(50),
val2 varchar2(50),
val3 varchar2(50)
create or replace type test_type1 is table of test_object1;
create or replace type test_object2 as object
val1 varchar2(50),
val2 varchar2(50),
val3 varchar2(50)
create or replace type test_type2 is table of test_object2;
GRANT ALL ON test_object1 TO PUBLIC;
GRANT ALL ON test_type1 TO PUBLIC;
GRANT ALL ON test_object2 TO PUBLIC;
GRANT ALL ON test_type2 TO PUBLIC;
here is the table made of object type:
create table test_object_tpe
sl_num NUMBER,
description VARCHAR2(100),
main_val1 test_type1,
main_val2 test_type2
NESTED TABLE main_val1 STORE AS tot1
NESTED TABLE main_val2 STORE AS tot2;
here is the procedure which inserts values into nested table:
PROCEDURE INSERT_TEST_DATA(sl_num IN NUMBER,
description IN VARCHAR2,
p_main_val1 IN test_type1,
p_main_val2 IN test_type2
IS
BEGIN
FOR rec in p_main_val1.first..p_main_val1.last
LOOP
INSERT INTO xxdl.test_object_tpe
sl_num,
description,
main_val1,
main_val2
VALUES
sl_num
,description
,test_type1 (test_object1(
p_main_val1(rec).val1,
p_main_val1(rec).val2,
p_main_val1(rec).val3
,test_type2 (test_object2( p_main_val2(rec).val1,
p_main_val2(rec).val2,
p_main_val2(rec).val3
END LOOP;
commit;
END INSERT_TEST_DATA;
here is the anonymoys block which assigns values to the object type and pass values into the procedure:
set serveroutput on;
declare
p_sl_num NUMBER := 1001;
p_description VARCHAR2(50) := 'Testing Val1';
inval1 test_type1 := test_type1();
inval2 test_type2 := test_type2();
begin
inval1(1).val1 := 'testx1';
inval1(1).val2 := 'testx2';
inval1(1).val3 := 'testx3';
inval2(1).val1 := 'testy1';
inval2(1).val2 := 'testy2';
inval2(1).val3 := 'testy3';
CSI_PKG.INSERT_TEST_DATA(sl_num => p_sl_num,
description => p_description,
p_main_val1 => inval1,
p_main_val2 => inval2
end;
Can anybody correct me.
Thanks,
LavanThanks for posting the DDL and sample code but whenever you post provide your 4 digit Oracle version (result of SELECT * FROM V$VERSION).
>
How to assign Values to nested table and pass as parameter to procedure?
>
Well you are doing almost everything wrong that could be done wrong.
Here is code that works to insert data into your table (the procedure isn't even needed).
declare
p_sl_num NUMBER := 1001;
p_description VARCHAR2(50) := 'Testing Val1';
inval1 test_type1 := test_type1();
inval2 test_type2 := test_type2();
begin
inval1.extend();
inval1(1) := test_object1('testx1', 'testx2', 'testx3');
inval2.extend();
inval2(1) := test_object2('testy1', 'testy2', 'testy3');
INSERT INTO test_object_tpe
sl_num,
description,
main_val1,
main_val2
VALUES
(p_sl_num, p_description, inval1, inval2);
commit;
end;
/See Example 5-15 Referencing a Nested Table Element in Chap 5 Using PL/SQL Collections and Records in the PL/SQL doc
http://docs.oracle.com/cd/B28359_01/appdev.111/b28370/collections.htm#CJABEBEA
1. You don't even need the procedure since all it does is a simple INSERT into the table which you can do directly (see my code above)
inval1(1).val1 := 'testx1';There is no element one (1) of 'inval1' since you haven't created any elements yet. You need to EXTEND the collection to add an element
inval1.extend();And then there is an empty element but 'inval1' is a container for objects of type 'test_object1' not for scalars like 'val1', 'val2', and 'val3'.
So you can't do
inval1(1).val1 := 'testx1';You have to create an instance of 'test_object1'
inval1(1) := test_object1('testx1', 'testx2', 'testx3');And so on for the other collection
You don't need the procedure (as my sample code shows) but once you populate the variables properly it will work. -
New-GL-how to assign the zero balance accounts to scenarios
Dear Experts
Please help me how/where to assign the zero balance accounts to scenarios.
Standard functionality supports: Profit Center derication as mentioned below:
Derivation based on master data--If the line item contains a cost object, the profit center in the master data of the cost object is used.
Derivation based on product category
Derivation based on organizational structure
Derivation based on document splitting - For line items in the Accounts Payable, Accounts Receivable, Cash, and Taxes sub-ledgers, a profit center is only derived if you are using profit center segment accounting with clearing or with balancing. For journal entries, document splitting is always performed for the line items in these sub-ledgers after the other line items have been created.we are concerned abt the 1st scenario & 4
Default profit center-FAGL3KEH -If no profit center could be determined based on the product category, organizational structure, or document splitting, the standard profit center we specified when configuring the corresponding ledger is used.
But I am looking for a specific requirement to configure the Zero balance clearing account to the scenarios.
Thanks
RamaThat information will not be any use.
You can carry forward any number of times - the last should be after closing of previous years accounts.
Hope it is clear. -
How to assign a whole internal table to field symbol
Can anyone explain me that , can we assign the whole internal table to a field symbol .If yes please explain with some simple example by assigning an internal tabl data to a field symbol and how to loop on to that field symbol to write the data from it.
Please don't paste the F1 help .
Thanks,
Rose.hi
good
check this code
) Defining the table records and the field symbol in a similar type.
just an ordinary standard table
TYPES: BEGIN OF it_vbak_line,
vbeln LIKE vbak-vbeln,
vkorg LIKE vbak-vkorg,
vtweg LIKE vbak-vtweg,
spart LIKE vbak-spart,
kunnr LIKE vbak-kunnr,
END OF it_vbak_line.
DATA: it_vbak TYPE TABLE OF it_vbak_line.
FIELD-SYMBOLS: <it_vbak_line> TYPE it_vbak_line.
or as a screaming fast hash table for keyed reads
TYPES: BEGIN OF it_vbpa_line,
vbeln LIKE vbak-vbeln,
kunnr LIKE vbak-kunnr,
END OF it_vbpa_line.
DATA: it_vbpa TYPE HASHED TABLE OF it_vbpa_line
WITH UNIQUE KEY vbeln.
FIELD-SYMBOLS: <it_vbpa_line> TYPE it_vbpa_line.
2) In ITAB processing, utilize the ASSIGNING command.
loop example
LOOP AT it_vbak ASSIGNING <it_vbak_line>.
look at records--populate it_zpartner
read example
READ TABLE it_vbpa ASSIGNING <it_vbpa_line>
WITH TABLE KEY vbeln = <it_vbak_line>-vbeln.
3) Refer to the field symbol's fields in the loop or after the read.
wa_zpartner-vkorg = <it_vbak_line>-vkorg.
wa_zpartner-vtweg = <it_vbak_line>-vtweg.
wa_zpartner-spart = <it_vbak_line>-spart.
wa_zpartner-kunag = <it_vbak_line>-kunnr.
wa_zpartner-kunwe = <it_vbpa_line>-kunnr.
See the code example below for further detail. The code was written in R/3 4.6C and should work for all 4.x versions.
thanks
mrutyun^ -
How to assign values to dynamic table
Hi All,
I am working with a dynamic table and an internal table. My internal table looks like this.
Projno Cust Opt Status
g1234 kkkkk p1 I001
g1234 kkkkk p2 I004
g1234 kkkkk p3 I001
g1234 kkkkk p5 I002
g1256 lmnvw p1 I003
g1256 lmnvw p3 I004
g1256 lmnvw p5 I005
g1256 lmnvw p7 I001
My Dynamic table struture looks like this
Projno Cust p1 p2 p3 p4 p5 p6 p7
I need data in my dynamic table from my internal table as follows
Projno Cust p1 p2 p3 p4 p5 p6 p7
g1234 kkkkk I001 I004 I001 I002
g1256 lmnvw I003 I004 I005 I001.
The problem is these operations may vary thats why i am using dynamic table. Even i cannot use case statement as the operations may vary.
Is it possible to do using Assign component or some other way.
ThanksThis program creates dynamic internal table
copy and paste in your program and test it .. debug it to know how it is creating dynamic internal table and values into that table.
report z_dynamic.
type-pools : abap.
field-symbols: <dyn_table> type standard table,
<dyn_wa>,
<dyn_field>.
data: dy_table type ref to data,
dy_line type ref to data,
xfc type lvc_s_fcat,
ifc type lvc_t_fcat.
selection-screen begin of block b1 with frame.
parameters: p_table(30) type c default 'T001'.
selection-screen end of block b1.
start-of-selection.
perform get_structure.
perform create_dynamic_itab.
perform get_data.
perform write_out.
form get_structure.
data : idetails type abap_compdescr_tab,
xdetails type abap_compdescr.
data : ref_table_des type ref to cl_abap_structdescr.
Get the structure of the table.
ref_table_des ?=
cl_abap_typedescr=>describe_by_name( p_table ).
idetails[] = ref_table_des->components[].
loop at idetails into xdetails.
clear xfc.
xfc-fieldname = xdetails-name .
xfc-datatype = xdetails-type_kind.
xfc-inttype = xdetails-type_kind.
xfc-intlen = xdetails-length.
xfc-decimals = xdetails-decimals.
append xfc to ifc.
endloop.
endform.
form create_dynamic_itab.
Create dynamic internal table and assign to FS
call method cl_alv_table_create=>create_dynamic_table
exporting
it_fieldcatalog = ifc
importing
ep_table = dy_table.
assign dy_table->* to <dyn_table>.
Create dynamic work area and assign to FS
create data dy_line like line of <dyn_table>.
assign dy_line->* to <dyn_wa>.
endform.
form get_data.
Select Data from table.
select * into table <dyn_table>
from (p_table).
endform.
form write_out .
Write out data from table.
loop at <dyn_table> into <dyn_wa>.
do.
assign component sy-index
of structure <dyn_wa> to <dyn_field>.
if sy-subrc <> 0.
exit.
endif.
if sy-index = 1.
write:/ <dyn_field>.
else.
write: <dyn_field>.
endif.
enddo.
endloop.
endform. " write_out -
How to remove preceeding zeros?
Hi,
Any function to remove the preceeding zeros from a number type.
I cannot be using integers because i need to append it to a string.
Thanks and regards,
RonitaHi Ranita,
U can use anyone of the following options.
DATA:num(10) value '0000000100'.
SHIFT num LEFT DELETING LEADING '0'.
WRITE:/ num.
Or
DATA : num(10) TYPE n VALUE '0000000100'.
DATA : l_num type n.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = num
IMPORTING
output = l_num.
write: l_num.
If it is helpfull pls reward pts.
Regards
Srimanta -
How to remove leading zeros in Table in Pages
I have a table where I need to enter decimals into a table in Pages and it keeps adding the 0 before the decimal and I cannot figure out how to make that stop. I need to be able to enter .54 and not have it change it to 0.54. Any help would soooooo appreciated!!
ThanksYou're welcome.
Sorry to hear y'all in the States are doing it so bad that there's nothing in front of the decimal place!
Peter -
How to assign values into nested table type in plsql
hi all,
I feel some what difficult to return user defined types from plsql function and procedures .
Can any one help me to learn this .
Version details are as follow
BANNER
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Product
PL/SQL Release 10.2.0.1.0 - Production
CORE 10.2.0.1.0 Production
TNS for 32-bit Windows: Version 10.2.0.1.0 - Production
NLSRTL Version 10.2.0.1.0 - Production
SQL>
create or replace type emp_names_nt is table of varchar2(100);
/* Formatted on 2012/04/05 15:23 (Formatter Plus v4.8.8) */
CREATE OR REPLACE FUNCTION get_emp_names
RETURN emp_names_nt
IS
CURSOR ec
IS
SELECT ename
FROM emp;
v_emp_names emp_names_nt := emp_names_nt ();
BEGIN
FOR i IN ec
LOOP
v_emp_names.EXTEND ();
v_emp_names (i) := i.ename;
END LOOP;
RETURN v_emp_names;
END;
Error :
PL/SQL: Statement ignored
PLS-00382: expression is of wrong typeThanks in advance .............
Thanks,
P PrakashCREATE OR REPLACE FUNCTION get_emp_names
RETURN emp_names_nt
IS
CURSOR ec
IS
SELECT ename
FROM scott.emp;
v_emp_names emp_names_nt := emp_names_nt();
cnt number:=1;
BEGIN
FOR i IN ec
LOOP
v_emp_names.EXTEND;
v_emp_names(cnt) := i.ename;
cnt:=cnt+1;
END LOOP;
RETURN v_emp_names;
END;
show errors -
How to assigne multiple value in key of read table
Hi gurus,
I want read table xxxx with key field1 = ' xxx' or field1 = 'yyy'.
how to assign multiple value as key for the same field while reading internal table.
Regards
sagarHi ,
You can loop the internal table like
loop at <table xxxx> where field1 = ' xxx' or field1 = 'yyy'
or you can write two read statements to read the internal table in wrk area.
read table <table xxxx> with key field1 = ' xxx'.
if sy-subrc <>0
read table <table xxxx> with key field1 = 'yyy'.
if sy-subrc = 0
endif.
else.
do your data processing.
endif.
Thans. -
How to suppress zeroes in table control?
friends,
by default, i am getting the initial values (zeros 0.00 for qty. fields) for the fields that am displaying in table control...how to suppress the zeroes (fields for which no values are there) in table control? any option like we have in alv (no_zeros) avbl? thanks allu are getting 0.00 bcos these are the field properties , so u have to create a new field for ur requirement.
check the field attributes in SE51,
DICT = DEC Format.
Program = No Check for leading ZEROS.
Regards
Prabhu
Message was edited by:
Prabhu Peram -
How to assign table name for select query in loop.
Hi friends my requirement is count the no of records of all the database table which comes into an internal table ."Check the below coding". Iam fetching the tables from dd03l table into an internal table .plz give me a sujjesion how to assign a table name in select query in a loop.
SELECT tabname FROM dd09l
INTO TABLE i_dd09l
WHERE protokoll = 'X'.
IF sy-subrc = 0.
SORT i_dd09l BY tabname.
ENDIF.
LOOP AT i_dd09l.
SELECT COUNT(*) INTO val FROM i_dd09l-tabname.
IF sy-subrc = 0.
i_dd09l-count = val.
ENDIF.
MODIFY i_dd09l INDEX sy-index.
CLEAR val.
ENDLOOP.
error : 'I_DD09L-TABNAME' is not defined in the abap dictionary as a table.data: dy_table type ref to data,
dy_line type ref to data,
xfc type lvc_s_fcat,
ifc type lvc_t_fcat,
dy_field type ref to data.
LOOP AT i_dd09l.
perform get_structure using i_dd09l-tabname .
CREATE DATA dy_table TYPE TABLE OF (_dd09l-tab_name).
UNASSIGN <dyn_table>.
ASSIGN dy_table->* TO <dyn_table>.
SELECT COUNT(*) INTO val FROM <dyn_table>.
IF sy-subrc = 0.
i_dd09l-count = val.
ENDIF.
MODIFY i_dd09l INDEX sy-index.
CLEAR val.
ENDLOOP.
form get_structure using p_table.
data : idetails type abap_compdescr_tab,
xdetails type abap_compdescr.
data : ref_table_des type ref to cl_abap_structdescr.
Get the structure of the table.
ref_table_des ?=
cl_abap_typedescr=>describe_by_name( p_table ).
idetails = ref_table_des->components.
loop at idetails into xdetails.
clear xfc.
xfc-fieldname = xdetails-name .
xfc-datatype = xdetails-type_kind.
xfc-inttype = xdetails-type_kind.
xfc-intlen = xdetails-length.
xfc-decimals = xdetails-decimals.
append xfc to ifc.
endloop.
endform. "get_structure
Try like this hope it will work.
Regards,
madan. -
How to assign select-option values to internal table
hi all,
how to assign select-option values to internal table
thanks in advance.Hi,
You just need to loop at your select-option field and take the values from low and high fields.
for. e.g
loop at s_werks .
move:s_werks-low to <your itab>
if not s_werks-high is initial .
move: s_werks-high to <youritab>
endif .
append <your itab>
endloop .
OR use select statement.
regards,
Omkar.
Message was edited by:
Omkaram Yanamala
Message was edited by:
Omkaram Yanamala -
How to assign custom table entries to request
Hi,
I have around 4000+ entries in Z* table(Customized data).
Now i have to transport to QA system by assigning request no.
How to assign the above all entries to the request.
Thanks
~KERHi Ramesh,
That you can do it if you select
Recording routine as <u>Standard recording routine</u> under table maintainance generator.
But in my case the table has been created with <u>no,or user,recording routine</u> option and updated all records in dev system.
So its not possible at this point of time.
Thank you
~KER -
How to assign a seq while creating a table
Hi,
How to assign a sequence such that i dont want to give the sequence while creation. i mean
if employee table is there
sl_no empname salary .....
i dont want to give sequence while inserting the data, i want to give the sequence at creation of table level for sl_no
i tried this
create table seqtest1 (id number primary key default rajseq.nextval);
but it is showing me the error
ERROR at line 1:
ORA-00907: missing right parenthesis
whats the solution
please help me
Thank you
Raj deep.AHi Raj,
You can not assign a sequence to a column while creating a table. you have two options for this. (So you can also use one sequence for multiple tables)
1. As Gasparotto said, you can create a before insert statement. OR
2. you can assign new sequence number in the program code. for example.
insert into xxx (user_id,name,surname) values (seq_userid.nextval,'Raj','Deep');
Good Luck.
Onur -
How to assign a query retrived value to a user defined object in a table
how to assign a query retrived value to a user defined object in a table
Rajeshwar,
If you use the "Search" feature in this forum, you should be able to find helpful links to similar questions. You could also look at the RecordSet and DoQuery documentation in the SAP Business One SDK Help Center documentation to assist you with your question.
HTH,
Eddy
Maybe you are looking for
-
I can't seam to get all my songs from my iPhone to my iTunes account on my mac. any ideas?
-
Error while creating roles in CMC
Hi experts I installed sap integraiton kit in my system.Though i have installed in my system i am unable to acces my infoview , so copied some files for java connector --sapjco.jar should be copied to the shared library folder of the application serv
-
Passing data from one transaction to another
Hello , I have internal table as a result of user selection on the selection screen of first transaction. Internal table can have any number of lines that have to be processed in second transaction. How I can pass data ( list ) from first transact
-
Using a standard midi file, how do I get this to an output port for playing it on an extern midi-keyboard?
-
2009 Running slow with Office 2011
I have a mide 2009 Macbook Air running Lion and Office 2011 including Communicator with max @Gb ram. Does anyone have any ideas how to speed the sluggish perfromance without replacing the Mac.