Check automatic period overlap in database table and limit previous record.
Hi,
I'm creating a database table with records containing also two period filelds, BEGDA and ENDDA (begin and end of period).
There's some setting that permit a new record to limit the previous end period? I prefer not to do that in the modulpool of the table view.
Obviously I'm talking of 2 records having the same key fields.
Thanks for answers.
Yes you can do it in your maintenance dialog.
But as far as I know, ENDDA must be a key field of your table (and also the last key field), but BEGDA should not.
Then in your maintenance dialog include this code
MODULE consistency. "VCX-19950103-183710
ENDCHAIN.
CHAIN. "VCX-19950103-183710
FIELD v_t511k-begda. "VCX-19950103-183710
FIELD v_t511k-endda. "VCX-19950103-183710
MODULE temp_delimitation ON CHAIN-REQUEST. "VCX-19950103-183710
ENDCHAIN. "VCX-19950103-183710
FIELD vim_marked MODULE liste_mark_checkbox.
CHAIN.
FIELD v_t511k-endda.
FIELD v_t511k-konst.
MODULE liste_update_liste.
The relevant code is this:
CHAIN. "VCX-19950103-183710
FIELD v_t511k-begda. "VCX-19950103-183710
FIELD v_t511k-endda. "VCX-19950103-183710
MODULE temp_delimitation ON CHAIN-REQUEST. "VCX-19950103-183710
ENDCHAIN. "VCX-19950103-183710
Then you'll have the DELIMIT button in the maintenance view, to delimit your records
You can take the standard table T511K (and its maintenance view V_T511K) as an example.
Edited by: Jose Maria Otero on Aug 31, 2011 1:18 PM
Similar Messages
-
To create workflow process which periodically examines one database table??
hi.......
plz tell me the complete details that how to create workflow process which periodically examines one database table??
also it will send email to specific address if certain condition is not fulfilled??
help is really appreciated
thanks nd regards
manish singlaHi,
I'd be wary of using a WAIT activity, since this will essentially have the workflow running forever in the same SQL session. If you ever need to shutdown the database, then you would have to kill the session (or do a shutdown abort), which will rollback all the Workflow transactional data.
I would leave the polling logic to a process outside the Workflow engine. In an Applications environment, this should be a Concurrent request. If this is standalone Workflow, then schedule something using DBMS_JOB. The job should check the database, and if necessary, initiate a new workflow to send the notification.
If the notification does not require a response, then I would be inclined to bypass Workflow competely, and have a job which calls UTL_SMTP to send an email.
HTH,
Matt
Alpha review chapters from my book "Developing With Oracle Workflow" are available on my website:
http://www.workflowfaq.com
http://forum.workflowfaq.com -
The type of the database table and work area are not Unicode convertible
***Data declaration
TYPES : BEGIN OF t_zle_lagerplanung,
SEl, "stores which row user has selected
kdauf TYPE zle_lagerplanung-kdauf,
kdpos TYPE zle_lagerplanung-kdpos,
etenr TYPE zle_lagerplanung-etenr,
papiermaschine TYPE zle_lagerplanung-papiermaschine,
runnr TYPE zle_lagerplanung-runnr,
prio TYPE zle_lagerplanung-prio,
werk TYPE zle_lagerplanung-werk,
durchmesser TYPE zle_lagerplanung-durchmesser,
breite TYPE zle_lagerplanung-breite,
anzle TYPE zle_lagerplanung-anzle,
lgpla TYPE zle_lagerplanung-lgpla,
lgtyp TYPE zle_lagerplanung-lgtyp,
art TYPE zle_lagerplanung-art,
anzhoehe TYPE zle_lagerplanung-anzle,
fa TYPE zle_lagerplanung-fa,
END OF t_zle_lagerplanung.
DATA : it_zle_lagerplanung TYPE STANDARD TABLE OF t_zle_lagerplanung INITIAL SIZE 0,
wa_zle_lagerplanung TYPE t_zle_lagerplanung.
Here I am getting the data in internal table by using thiis select statement.
SELECT kdauf kdpos etenr papiermaschine runnr prio werk durchmesser breite
anzle lgpla lgtyp art anzhoehe fa
FROM zle_lagerplanung INTO CORRESPONDING FIELDS OF TABLE it_zle_lagerplanung
WHERE kdauf IN s_kdauf
AND KDPOS IN s_kdpos
AND werk = p_werks.
But while updating the particular field in zle_lagerplanung using this statement
UPDATE zle_lagerplanung from table it_zle_lagerplanung.
it is giving syntax error
"The type of the database table and work area (or internal table)
"IT_ZLE_LAGERPLANUNG" are not Unicode convertible. "
Could any one help me out how to resolve this problem....
Thanks in advanceDear Shayamal,
XXX....are not Unicode convertible
This error comes while inserting or updating database and the fields are not matching between data base table and structure .
Check you fields of data base table and "zle_lagerplanung" and struture "it_zle_lagerplanung" . There fields must match.
thanks and regrds,
Anup Banerjee -
I need to know the name of the database table and the fields in that table
hi,
i need to I need to know the name of the database table and the fields in that table for the following fields of the front end .
1) incident details.
2) ownership details
3) injury type
4) % of investigation completed withen 7 days.
5) count of incident type
6) cost of workers compensation claim.
7) injury resulting from for workers compensation claim
8) investigation free text.
9) investigation contribution factors.
10) investigation root cause.
11) investigation root cause free text
12) employee risk assesment
13) protential infrigment notice issued
14) actual infrigment notice issued.
15) actual infrigment notice reference number.
16)vehicle damaged text.
18) when the incident occured.
thanks and regards,
pronoy .Hello,
Check CCIHT* under se16 and search for relevant information
Thanks
Jayakumar -
Backing Up Database Table and Records in Oracle 10g
Hi All,
I created database for my company with Oracle 10g Database Server and want to backup all my database tables and records within (i.e creating another username inside the data and transfer them) and outside (i.e transfering them in another destination outside the database server) the database. Could you please instruct me on how to achieve?
I look forward to hearing from you all.
Thank you.
JcHi, use RMAN utility
do this
rman target sys/*** nocatalog
run {
allocate channel t type disk;
backup
format '/app/oracle/backup/%d_t%t_s%s_p%p'
(database);
release channel t;
{code
Also read backup and recovery guide at http://download.oracle.com/docs/cd/B19306_01/backup.102/b14192/toc.htm
regards -
The type of the database table and work area (or internal table)...
Hello
I am trying to use a database and select all records from it and store them into an internal table.
My code:
Select * from xixi_dbcurrency into table gt_currency.
The error:
"The type of the database table and work area (or internal table) "GT_CURRENCY" are not Unicode-convertible . . . . . . . . . . "
Any suggestions?
Thank youHi Thomas,
Thank you for your inputs above.
But as you suggested is we use INTO CORRESPONDING FIELDS OF TABLE then it resolve the error.
But I have below piece of code:
DATA: it_new_source TYPE STANDARD TABLE OF _ty_s_sc_1,
wa_source TYPE _ty_s_sc_1,
wa_new_source TYPE _ty_s_sc_1,
ls_target_key TYPE t_target_key.
SELECT * INTO CORRESPONDING FIELDS OF TABLE it_new_source
FROM /bic/afao06pa100
FOR ALL ENTRIES IN SOURCE_PACKAGE
where /bic/fcckjobno = SOURCE_PACKAGE-/bic/fcckjobno
and /bic/fcckjitid = SOURCE_PACKAGE-/bic/fcckjitid.
But since this is reading into corresponding fields of table the data load from one DSO to other DOS is running for long more that 15 hours and still not getting completed and giving dump.
So if I switch the search to below:
SELECT * FROM /bic/afao06pa100
INTO TABLE it_new_source
FOR ALL ENTRIES IN SOURCE_PACKAGE
where /bic/fcckjobno = SOURCE_PACKAGE-/bic/fcckjobno
and /bic/fcckjitid = SOURCE_PACKAGE-/bic/fcckjitid.
Then I am getting below error:E:The type of the database table and work area (or internal table) "IT_NEW_SOURCE" are not Unicode convertible.
Can you please advice on this, as performance need to improve in start routine code.
Thank You. -
Extract data from database tables and download in pdf and csv
extract data from database tables and download in pdf and csv
hi how can i re-write my old form procedure in adf java. the procedure used to extract data from diffirent table and dowload the data in pdf and csv.am not downloading image, i what to extract data from diffirent tables in my database and download that data in pdf and csv. i would like to write this in java adf.i just what direction am not asking anyone to do my work this is my learning curve
the form code is
function merge_header3 return varchar2 is
begin
return '~FACILITY DESCRIPTION~ACCOUNT NO~BRANCH CODE~BANK REF NO.~P/P/ AMOUNT~Postal Address 1~Postal Address 2~Box Postal Code~Dep. Date~Month~BANK NAME~BRANCH NAME~ACCOUNT TYPE~DESCRIPTION~OBJECTIVE DESCRIPTION';
end;
procedure download_file (i_pbat integer) is
dir varchar2(80);
file_name1 varchar2(80);
file_name2 varchar2(80);
appl_code varchar2(80);
fil1 client_text_io.file_type;
fil2 client_text_io.file_type;
dat varchar2(1000);
DATA VARCHAR2(1000);
bvspro varchar2(100);
ssch varchar2(100);
bvspro_total number(20,2);
ssch_total number(20,2);
grand_total number(20,2);
cnt integer;
cursor pbat is
select *
from sms_payment_batches
where id = i_pbat
cursor pay (pb_id integer) is
select *
from sms_payment_vw
where pbat_id = pb_id
order by subsidy ASC,programme,beneficiary_name
cursor cgref (low varchar2) is
select *
from cg_ref_codes
where rv_domain ='SMS'
and rv_low_value = low
success boolean;
begin
set_application_property(cursor_style,'busy');
appl_code := sms_global.ref_code('SMS','APP_CODE','SMS',0);
dir := sms_global.ref_code('SMS','PAY_DIR','c:\sms\batch_payments',0);
success := webutil_file.create_directory(dir);
if webutil_file.file_is_directory(dir) then
null;
-- message ('directory exists');
else
-- message ('create directory ');
success := webutil_file.create_directory(dir);
-- if success then message ('directory exists'); end if;
end if;
for c_pbat in pbat loop
file_name1 := dir ||'\' || appl_code||c_pbat.batch_number||'-'||to_char(c_pbat.batch_dt,'yyyymmdd')||'pay.txt';
file_name2 := dir ||'\' || appl_code||c_pbat.batch_number||'-'||to_char(c_pbat.batch_dt,'yyyymmdd')||'merge.txt';
--message('create files ');
-- fil1 := client_text_io.fopen (file_name1,'W');
-- fil2 := client_text_io.fopen (file_name2,'W');
fil1 := client_text_io.fopen (file_name1,'W','');
fil2 := client_text_io.fopen (file_name2,'W','');
dat := 'FROM ACCOUNT NUMBER'
||'~'||'FROM ACCOUNT DESCRIPTION'
||'~'||'MY STATEMENT DESCRIPTION'
||'~'||'BENEFICIARY ACCOUNT NUMBER'
||'~'||'BENEFICIARY SUB ACCOUNT NUMBER'
||'~'||'BENEFICIARY BRANCH CODE'
||'~'||'BENEFICIARY NAME'
||'~'||'BENEFICIARY STATEMENT DESCRIPTION'
||'~'||'AMOUNT';
-- client_text_io.put_line(fil1,dat);
bvspro:= null;
ssch := null;
cnt := 0;
dat := '~'||lpad('~',16,'~');
for c_pay in pay(c_pbat.id) loop
--message('cpay loop ' || cnt);
if bvspro is null then
dat := lpad('~',16,'~');
dat := utility.put_field(1,c_pay.programme,dat,'~');
client_text_io.put_line(fil2,dat);
dat := utility.put_field(1,c_pay.subsidy,dat,'~');
client_text_io.put_line(fil2,dat);
dat := merge_header3;
client_text_io.put_line(fil2,dat);
bvspro := c_pay.programme;
ssch := c_pay.subsidy;
grand_total := 0;
bvspro_total := 0;
ssch_total := 0;
end if;
if bvspro <> c_pay.programme then
dat := lpad('~',16,'~');
dat := utility.put_field(5,ssch_total,dat,'~');
dat := lpad('~',16,'~');
dat := utility.put_field(5,bvspro_total,dat,'~');
dat := utility.put_field(1,'Total:' || bvspro,dat,'~');
client_text_io.put_line(fil2,dat);
dat := lpad('~',16,'~');
client_text_io.put_line(fil2,dat);
dat := utility.put_field(1,c_pay.programme,dat,'~');
client_text_io.put_line(fil2,dat);
bvspro := c_pay.programme;
dat := utility.put_field(1,c_pay.subsidy,dat,'~');
client_text_io.put_line(fil2,dat);
dat := merge_header3;
client_text_io.put_line(fil2,dat);
bvspro := c_pay.programme;
ssch := c_pay.subsidy;
bvspro_total := 0;
ssch_total := 0;
cnt :=0;
end if;
if ssch <> c_pay.subsidy then
dat := lpad('~',16,'~');
dat := utility.put_field(5,ssch_total,dat,'~');
dat := lpad('~',16,'~');
client_text_io.put_line(fil2,dat);
dat := utility.put_field(1,c_pay.subsidy,dat,'~');
client_text_io.put_line(fil2,dat);
dat := merge_header3;
client_text_io.put_line(fil2,dat);
ssch := c_pay.subsidy;
ssch_total := 0;
cnt :=0;
end if;
bvspro_total := bvspro_total + c_pay.amount;
ssch_total := ssch_total + c_pay.amount;
grand_total := grand_total + c_pay.amount;
cnt := cnt +1;
--message('bfore write file 2 ' );
client_text_io.put_line(fil2
,cnt
||'~'|| c_pay.beneficiary_name
||'~'||c_pay.BENEFICIARY_ACCOUNT_NUMBER ||''
||'~'||c_pay.BRANCH_CODE ||''
||'~'|| c_pay.BENEFICIARY_STATEMENT_DESC
||'~'|| c_pay.AMOUNT
||'~'|| c_pay.address_line1
||'~'|| c_pay.address_line2
||'~'|| c_pay.postal_code
||'~'|| TO_CHAR(c_pay.deposit_date,'DD-Mon-YYYY')
||'~'|| c_pay.month
||'~'|| c_pay.bank
||'~'|| c_pay.bank_branch
||'~'|| c_pay.account_type
||'~'|| c_pay.subsidy
||'~'|| c_pay.programme)
DATA := c_pay.FROM_ACCOUNT_NUMBER
||'~'||c_pay.FROM_ACCOUNT_DESCR
||'~'||c_pay.MY_STATEMENT_DESCR
||'~'||c_pay.BENEFICIARY_ACCOUNT_NUMBER
||'~'
||'~'||c_pay.BRANCH_CODE
||'~'||c_pay.BENEFICIARY_NAME
||'~'||c_pay.BENEFICIARY_STATEMENT_DESC
||'~'||c_pay.AMOUNT;
DATA := REPLACE(DATA, ',' , ' ' );
DATA := REPLACE(DATA, '~' , ',' );
--message (cnt ||' ' || data);
--message('bfore write file 1 ' );
client_text_io.put_line(fil1, data);
end loop;
--message ('end of write');
dat := lpad('~',16,'~');
dat := utility.put_field(6,ssch_total,dat,'~');
dat := lpad('~',16,'~');
dat := utility.put_field(1,'Total:' || bvspro,dat,'~');
dat := utility.put_field(5,bvspro_total,dat,'~');
client_text_io.put_line(fil2,dat);
dat := lpad('~',16,'~');
client_text_io.put_line(fil2,dat);
dat := utility.put_field(1,'Grand Total:' ,dat,'~');
dat := utility.put_field(5,grand_total,dat,'~');
client_text_io.put_line(fil2,dat);
-- close file
for i in 1..50 loop
if substr(i,-1) = 0 then
message ('flush ' || i);
end if;
client_text_io.put_line(fil1, lpad(' ',2000));
client_text_io.put_line(fil2, lpad(' ',2000));
client_text_io.put_line(fil1, lpad(' ',2000));
client_text_io.put_line(fil2, lpad(' ',2000));
end loop;
client_text_io.fclose(fil1);
client_text_io.fclose(fil2);
end loop;
set_application_property(cursor_style,'default');
exception
when others then
message(sqlcode ||' ' ||sqlerrm);
end download_file; i try this but this code onlydownload image not data from database tables
public void downloadImage(FacesContext facesContext, OutputStream outputStream)
BindingContainer bindings = BindingContext.getCurrent().getCurrentBindingsEntry();
// get an ADF attributevalue from the ADF page definitions
AttributeBinding attr = (AttributeBinding) bindings.getControlBinding("DocumentImage");
if (attr == null)
return;
// the value is a BlobDomain data type
BlobDomain blob = (BlobDomain) attr.getInputValue();
try
{ // copy the data from the BlobDomain to the output stream
IOUtils.copy(blob.getInputStream(), outputStream);
// cloase the blob to release the recources
blob.closeInputStream();
// flush the output stream
outputStream.flush();
catch (IOException e)
// handle errors
e.printStackTrace();
FacesMessage msg = new FacesMessage(FacesMessage.SEVERITY_ERROR, e.getMessage(), "");
FacesContext.getCurrentInstance().addMessage(null, msg);
}You should ask your forum in the ADF-forum.
-
How to link Azure database tables and fields to VS2012 C++ entry form
We are using Visual Studio 2012 C++ and have successfully connected to the database on Azure, but do no know how to associate the database tables and fields with the C++ application data entry forms. Can anyone help? Thanks
Hello Roxanne,
You could use Entity framework to map classes to Azure tables. Please refer http://www.codeproject.com/Articles/363040/An-Introduction-to-Entity-Framework-for-Absolute-B to
learn more. Hope this helps.
Regards,
Kumar Bijayanta -
Insert a new record in the database table in between the records.
i va a database table which ve 100 records. but i want to insert my new record as 50th record. how i want to proceed?
thanks ,
velu.V,
This is an odd request. Why?
Ignoring that, you can ATTEMPT to insert into the 50th position IF:
1) The DB table has just had the primary key index re-built/re-shuffled to GUARANTEE that it IS in primary key order
2) And the primary key of the new record is built so that it follows the 49th record
Regardless, once this table has activity against it, its sort order can/will get out of promary key order (with adds/changes/deletes).
But when you select data from it, you can use ORDER BY or an ABAP SORT to organzie the date as needed.
Again... not sure WHY you need a record in a particular physical position... who cares... it is a relational DB. -
I have a mpp screen for a cd library management system (we are practicing on it).
We have a main screen where a user should enter the enteries and while clicking a add button it should be inserted in a table, Here the problem rises the table name are ztransaction and zstatus.The fields in mpp are cdid,customerid,transaction id,date of issue and duedate.Now after entering all the values on clicking add button it should be inserted to database table ztransaction and the field cdid alone should be inserted both in ztransaction and zstatus.
Thank youHi Raghuram R G,
Check for Primary key and foreign key in the Database table??? Because of this it was not inserting...check and confirm??
Regds,
Vijay SR -
Adding fields to database table and copying data from other fields
Hi All,
I am having a database table where in I am having a column 'FIELD1'.
My requirement is that I want to add two more fields in the table 'FIELD2' and 'FIELD3'.
I then want to copy all the data in field1 to field2 and field3. then I want to delete the original field1.
for Ex.
lets say FIELD1 = 100.
now I want to add FIELD2 and FIELD3 in the table and make FIELD2 = 100 AND FIELD3 = 100. The FIELD1 will be deleted from table.
Please suggest the methods to do so.
It is urgent.Hi Gaurav,
do this way ...
data : begin of it_ztab occurs 0 with header line,
fld1 like ztab-fld1,
fld2 like ztab-fld2,
fld3 like ztab-fld3,
end of it_ztab.
data : wa_ztab like it_ztab.
it_ztab-fld1 = '100'.
append it_ztab.
clear it_ztab.
loop at it_ztab.
wa_ztab-fld2 = it_ztab-fld1.
wa_ztab-fld3 = it_ztab-fld1.
wa_ztab-fld1 = ' '.
* Make sure that the structure of internal table/ workarea and database table shoud be same
modify ztab from wa_ztab.
endloop. -
EAV modelling approach on database tables and how to use it in Forms Dvl
Hello,
I am dealing with two tables in data modell which are structured on EAV ( Entity-Attribute-Value ) modelling approach.
Survey( Survey# number not null,
Start_Date_Of_Survey date not null ,
End_Date_Of_Survey date null,
Sts_Of_Survey varchar2( 4 ) not null ,
Contractor_Partner# number not null, -- reference foreign key, to Partner's Table
Survey_Report CLOB ) ;
Survey# primary key of Survey.
Meta_Survey_Parameter_Register( Parameter# varchar2( 40 ) not null,
Additional_Parameter_Desc varchar2( 240 ) null,
Type_Of_Value varchar2( 60 ) not null,
Data_Type varchar2( 10 ) not null,
Unit varchar2( 10 ) null,
High_Value varchar2( 20 ) null,
Low_Value varchar2( 20 ) null );
Type_Of_Value Is restricted to : ATOMIC_VALUE, INTERVAL_VALUE_FROM_TO
Data_Type is restricted to: Date, time, number( X,Y ), varchar2,
Unit is varchar2 value not resstricted: for example: %, kg as kilo, m as meter, m/s as meter per second, null
This table is meta table so it suppose to be used as some register - static part of the schema.
Then I have table which attaches Parameters to the Survey as the association table
Survey_Parameters( Survey#, Parameter#, Value, Comment );
Primary key( Survey#, Parameter# );
I need to implement this in Forms and Reports.
My question is how to implement it to maximally make good use of Oracle forms 10g or 11g features and Oracle Reports 10g:
a) when fulfilling the survey and use of parsing rules supplied in Meta_Survey_Parameter_Register
b) at the producing as the survey report with reports
c) in data analyisis in data warehouse impementations.Hello Craig,
Thank you Craig for your answer.
I must confess that I am also not familiar with EAV theoretical background and concept. Till recently I even did not know that this kind of problem could be placed
in theoretical background called EAV. This put smile nad releive on my mind. Because since this moment I do not feel this kind of problem as some exception or
some exceptional tools or data design ( object modelling and object databases ) suppose to be used. This way I can still counted on concepts in RDBMS databases
and applications. Well I guess so.
Let me comment and answer on your text between your lines.
I am only conceptually familiar with EAV modeling, so I don't claim to be an expert! ;-) Given the abstract way in which data is stored with EAV, I would suggest that you first create a SQL Query that will produce the desired record set.
Ok. But I guess you have in mind to transform vertical set of values to horizontal ( pivoting, transposing )?
View has cast operator that transform data type of each parameter from general ( e.g. varchar2 ) to the one that is registered in the
Meta_Parameter_Register. This way it is provided to get the survey with the list of assigned parameters in horizontal shape?
Once you have this, you can either use the Query as the source of a Database View and then base your Forms data block on this view or you can use the query in a Procedure and base your Forms data block on the procedure or lastely, you could use the query directly and base your Forms data block on the query using the "From Clause" option.
Ok, I think I understand it.
So When I have horizontal list there is challenge during
- insert
- delete
- update
operations how to handle these operations to transform to vertical operation.
This could only be done with Forms data block based on procedure and instead of triggers?
The simplest option would be to create a DB view and base your block on the view. You will not be able to update the data however. If you need to be able to change or add new data, I would suggest you use a Procedure based block. Take a look at these links for additional information on using Procedure and From Clause based blocks.
Ok Craig, sounds like it makes sense.
IT seems your suggestion is caling for some simpler example with the same characteristic of the problem.
Like two tables:
Master( Master#, ..... )
Detail( Master#, Detail#, value_low_or_just_value, value_high, data_type )
Forms: How to base a block on a FROM clause Query
Forms: How to base a data block on a Procedure
Ok,
Hope this helps,
I see your point and it makes sense , it is only the challenge to see how much of flexibility I can reach and how cheap workarounds are to preserve
the level of flexibility in the tools that are not naturally supporting EAV ( like forms and reports ).
If someone's response is helpful or correct, please mark it accordingly.
Sure...
We are on the line.
I am sure there is someone else in the community that experienced this kind of challenge. -
Checking a functional index on a table and its metadata
Hi,
I have a functional based normal index (unique) defined on a table which uses a decode function and a combination of the columns of a table.
Eg : decode (status, 'A', column1 || column 2, column1 || column2 || column3)
Now my question is, how do we query these functional indexes from the database to see what exactly the function is...
On the database when I run a query :-
select from all_indexes where index_name = :index_name,*
it retrieves the code name of the index stored as ncs$00025 (don't remember the exact value).
How do I find out what exactly the function is? (from which table)
and is there any way that I can query the data that has been indexed by this unique index so that I can verify why the unique constraint is being violated in some cases?
Thanks and Regards,
Suyashhow do we query these functional indexes from the database to see what exactly the function is...
select * from user_ind_expressions -
Number of records are different in database table and select statement
Hi All,
i need to fetch data from table BSID for the customer 0010000145
if i am writing the code like -
SELECT bukrs kunnr umskz shkzg dmbtr zfbdt zbd1t kkber
FROM bsid
INTO TABLE it_bsid
FOR ALL ENTRIES IN it_kna1
WHERE kunnr = it_kna1-kunnr
and bukrs = pa_bukrs.
no. of records are 130 in the internal table it_bsid
and actual records are 200
but when i am hardcoding the customer no.
i am getting the exact records
SELECT bukrs kunnr umskz shkzg dmbtr zfbdt zbd1t kkber
FROM bsid
INTO TABLE it_bsid
FOR ALL ENTRIES IN it_kna1
WHERE bukrs = pa_bukrs
AND kunnr = '0010000145'.
records in internal table = records in the database = 200.
how it is possible.
why the first code is not giving the correct no. of records.
please reply asap.
thanks in advance,
madhuMadhu,
You need to use the conversion routine...before u pass KUNNUR.
CONVERSION_EXIT_ALPHA_RANGE_I
CONVERSION_EXIT_ALPHA_RANGE_O
Hope this helps..
Chandra. -
AQ or Streams to replicate data from a database table and put it on a queue
If was tasked with the above if I was using AQ I'd think about publishing to queue via insert trigger on a table that's the destination end of a replication.
Given that there's replication involved it sounds like if you want to replicate data from A to B and also push it to a queue you should be thinking Streams with a transform and not just AQ.
However, how do you get Streams to replicate from A to B and at the same time and in the same transaction transform a message and put it on a queue?
Also, if you are to build the message in XML and use an XML payload what do you use to construct the message? PL/SQL by hand? Are there API's in PL/SQL to build a DOM and then stringify the DOM you've built such that everything is entity encoded correctly and the payload can be published to a queue as an XML payload?Oh yes sorry I lost track of which thread this was. I was thinking Streams but I forgot the original suggestion was to use triggers.
We have many use cases today where data arrives via inserts into some table and a process polls this table and processes the data. This approach does not scale very well. Currently these polling processes are polling the same database that is constantly inserting data as it arrives via multple processes.
I am trying to move away from this approach by introducing queuing. In addition to the above we also have an approach where as the data arrives it's placed on a queue and the process processes these messages asynchonously from the queue. Currently this queue based implementation does not use Oracle. I am trying to move to a solution where if the data must arrive via inserts into a database the processing of the data doesn't necessarily have to be by fetching those records out of the table thru polling. The general idea is that as the messages are inserted they are subsequently enqueued and processed off a queue. There is no desire to have a process which simply polls the database and enqueues what I find in the table. The goal is to remove constant polling of the database.
Maybe you are looking for
-
How to Handle PF Status in ALV report ?
Hi friends i wanna handle my own PF Status in my report how can i handle it ? please help me? regards satish
-
IMovie project corrupted?
For some reason the video clips in the project project have "shrunk". Also, none of the video clips play when I hover over them and press the spacebar. You can also see some of the clips show up as gray squares, or not at all. The same exact situa
-
F.13 with payment method
Hello Guru My client is doing payment outside of SAP but same time client is looking to do clearing in SAP without any payment medium (just a dummy clearing) for specific Payment method(wires) .My initial thought is to schedule F.13 .Is this a cor
-
Getting hierarchy of books and pages in portal - sitemap
Hi, I am using BEA Portal 8.1 SP5. I want to get a list of all the books and pages (up to the lowest level as one book can contain multiple books) contained in the portal. I am using BookPresentationContext.getEntitledPagePresentationContexts functio
-
Address Book not syncing with one computer (through .mac)
I'm having difficulty syncing one of my computers through .mac. My desktop seems to interact fine with the online account, but I can't get the AddressBook info from .mac onto my laptop. I have tried all the syc settings in System Preferences and in t