Problem With Offclye Payroll Records
HI Experts....
I Already Created a report to Display Regular Payroll Payments of Each Employee for a Month. Now i want to add the Off cycle Payroll Payments values into this Existing Report.
I Already Fetched the regular Pay roll Payments into Internal Table ITAB1. Now i am having Off cycle Payroll payments in ITAB2. Now i want to insert ITAB2-BONUS into ITAB1-BONUS.
But While modifying the ITAB1 it is giving dump.
The Code is:
GET PAYROLL.
IF PAYROLL-EVP-PAYTY IS INITIAL.
LOOP AT PAYROLL-INTER-RT INTO WA_RT.
CASE WA_RT-LGART.
WHEN '2100'.
IT_RT-BASIC = WA_RT-BETRG + IT_RT-BASIC.
WHEN '2200'.
IT_RT-HRA = WA_RT-BETRG + IT_RT-HRA.
WHEN '2300'.
IT_RT-CONV = WA_RT-BETRG + IT_RT-CONV.
WHEN '2400'.
IT_RT-SPCL = WA_RT-BETRG + IT_RT-SPCL.
WHEN '2600'.
IT_RT-MED = WA_RT-BETRG + IT_RT-MED.
WHEN '2500'.
IT_RT-LTA = WA_RT-BETRG + IT_RT-LTA.
WHEN '3100'.
IT_RT-LENC = WA_RT-BETRG + IT_RT-LENC.
WHEN '2800'.
IT_RT-BONUS = WA_RT-BETRG + IT_RT-BONUS.
WHEN '2900'.
IT_RT-SADV = WA_RT-BETRG + IT_RT-SADV.
WHEN '3000'.
IT_RT-HRARC = WA_RT-BETRG + IT_RT-HRARC.
WHEN '2700'.
IT_RT-TRDED = WA_RT-BETRG + IT_RT-TRDED.
WHEN '3200' .
IT_RT-MISC_PAY = WA_RT-BETRG + IT_RT-MISC_PAY.
WHEN '3300'.
IT_RT-MISC_D = WA_RT-BETRG + IT_RT-MISC_D.
WHEN '3600'.
IT_RT-SADV_R = WA_RT-BETRG + IT_RT-SADV_R.
WHEN '/3F1'.
IT_RT-EPF_D = WA_RT-BETRG + IT_RT-EPF_D.
WHEN '/3P3'.
IT_RT-PTAX = WA_RT-BETRG + IT_RT-PTAX.
WHEN '/460'.
IT_RT-ITAX = WA_RT-BETRG + IT_RT-ITAX.
WHEN '/560'.
IT_RT-NET = WA_RT-BETRG + IT_RT-NET.
WHEN '/3F2'.
IT_RT-VPF = WA_RT-BETRG + IT_RT-VPF.
WHEN '/ZF5'.
IT_RT-PF = WA_RT-BETRG + IT_RT-PF.
WHEN '/552'.
IT_RT-ARREAR = WA_RT-BETRG + IT_RT-ARREAR.
WHEN '9876'.
IT_RT-STIPEN = WA_RT-BETRG + IT_RT-STIPEN.
WHEN '2410'.
IT_RT-VDA = WA_RT-BETRG + IT_RT-VDA.
WHEN '2310'.
IT_RT-CANTALL = WA_RT-BETRG + IT_RT-CANTALL.
WHEN '2210'.
IT_RT-EDUCALL = WA_RT-BETRG + IT_RT-EDUCALL.
WHEN '1ESI'.
IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
WHEN '/3E1'.
IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
WHEN '/3E2'.
IT_RT-ERESI = WA_RT-BETRG + IT_RT-ERESI.
WHEN '2008'.
IT_RT-NSFTALL = WA_RT-BETRG + IT_RT-NSFTALL.
WHEN '/ZP1'.
IT_RT-CFPTX = WA_RT-BETRG + IT_RT-CFPTX.
ENDCASE.
ENDLOOP.
IT_RT-ARREAR = IT_RT-ARREAR + IT_RT-PF.
IT_RT-CFPEN = IT_RT-PF * ( 3059 / 10000 ).
IT_RT-CFEPS = IT_RT-PF * ( 6941 / 10000 ).
CLEAR EXSPEN.
EXSPEN = IT_RT-CFEPS - 541.
IT_RT-CFPEN = IT_RT-CFPEN + EXSPEN.
PERFORM ROUND_OFF CHANGING IT_RT-CFPEN.
IF IT_RT-CFEPS > 541.
IT_RT-CFEPS = 541.
ELSE.
IT_RT-CFEPS = IT_RT-CFEPS.
ENDIF.
IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL + IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL + IT_RT-MED + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS + IT_RT-SADV + IT_RT-MISC_PAY + IT_RT-ARREAR + IT_RT-STIPEN .
IT_RT-TOT_D = IT_RT-EPF_D
- IT_RT-HRARC
- IT_RT-TRDED
- IT_RT-MISC_D
- IT_RT-SADV_R
+ IT_RT-PTAX
+ IT_RT-ITAX
+ IT_RT-VPF
+ IT_RT-PF
+ IT_RT-EEESI + IT_RT-CFPTX.
IT_RT-EPS = IT_RT-BASIC * 833 / 10000.
IF IT_RT-EPS > 541.
IT_RT-EPS = 541.
IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
ELSE.
IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
ENDIF.
IT_RT-ADMINC = IT_RT-BASIC * 110 / 10000.
IT_RT-EDLI = IT_RT-BASIC * 50 / 10000.
IT_RT-EDLIADMIN = IT_RT-BASIC * 1 / 10000.
APPEND IT_RT.
CLEAR IT_RT.
ENDIF.
*-- For Off cycle run
IF PAYROLL-EVP-PAYTY IS NOT INITIAL AND
PAYROLL-EVP-OCRSN IS NOT INITIAL AND
PAYROLL-EVP-INOCR IS NOT INITIAL AND
PAYROLL-EVP-OCCAT EQ '02' AND
PAYROLL-EVP-PAYDT EQ PYENDDA.
LOOP AT PAYROLL-INTER-RT INTO WA_RT.
CASE WA_RT1-LGART.
WHEN '2600'.
IT_RT-MED = WA_RT-BETRG.
WHEN '2500'.
IT_RT-LTA = WA_RT-BETRG.
WHEN '2800'.
IT_RT-BONUS = WA_RT-BETRG.
ENDCASE.
ENDLOOP.
IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL + IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL + IT_RT-MED + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS + IT_RT-SADV + IT_RT-MISC_PAY + IT_RT-ARREAR + IT_RT-STIPEN.
IT_RT-TOT_D = IT_RT-EPF_D
- IT_RT-HRARC
- IT_RT-TRDED
- IT_RT-MISC_D
- IT_RT-SADV_R
+ IT_RT-PTAX
+ IT_RT-ITAX
+ IT_RT-VPF
+ IT_RT-PF
+ IT_RT-STIPEN
+ IT_RT-EEESI
+ IT_RT-CFPTX.
IT_RT-NET = IT_RT-TOT_E - IT_RT-TOT_D.
APPEND IT_RT.
CLEAR IT_RT.
ENDIF.
Edited by: Srikanth Kumar Talasu on Oct 22, 2008 4:04 PM
HI Experts....
I Already Created a report to Display Regular Payroll Payments of Each Employee for a Month. Now i want to add the Off cycle Payroll Payments values into this Existing Report.
I Already Fetched the regular Pay roll Payments into Internal Table ITAB1. Now i am having Off cycle Payroll payments in ITAB2. Now i want to insert ITAB2-BONUS into ITAB1-BONUS.
But While modifying the ITAB1 it is giving dump.
The Code is:
GET PAYROLL.
IF PAYROLL-EVP-PAYTY IS INITIAL.
LOOP AT PAYROLL-INTER-RT INTO WA_RT.
CASE WA_RT-LGART.
WHEN '2100'.
IT_RT-BASIC = WA_RT-BETRG + IT_RT-BASIC.
WHEN '2200'.
IT_RT-HRA = WA_RT-BETRG + IT_RT-HRA.
WHEN '2300'.
IT_RT-CONV = WA_RT-BETRG + IT_RT-CONV.
WHEN '2400'.
IT_RT-SPCL = WA_RT-BETRG + IT_RT-SPCL.
WHEN '2600'.
IT_RT-MED = WA_RT-BETRG + IT_RT-MED.
WHEN '2500'.
IT_RT-LTA = WA_RT-BETRG + IT_RT-LTA.
WHEN '3100'.
IT_RT-LENC = WA_RT-BETRG + IT_RT-LENC.
WHEN '2800'.
IT_RT-BONUS = WA_RT-BETRG + IT_RT-BONUS.
WHEN '2900'.
IT_RT-SADV = WA_RT-BETRG + IT_RT-SADV.
WHEN '3000'.
IT_RT-HRARC = WA_RT-BETRG + IT_RT-HRARC.
WHEN '2700'.
IT_RT-TRDED = WA_RT-BETRG + IT_RT-TRDED.
WHEN '3200' .
IT_RT-MISC_PAY = WA_RT-BETRG + IT_RT-MISC_PAY.
WHEN '3300'.
IT_RT-MISC_D = WA_RT-BETRG + IT_RT-MISC_D.
WHEN '3600'.
IT_RT-SADV_R = WA_RT-BETRG + IT_RT-SADV_R.
WHEN '/3F1'.
IT_RT-EPF_D = WA_RT-BETRG + IT_RT-EPF_D.
WHEN '/3P3'.
IT_RT-PTAX = WA_RT-BETRG + IT_RT-PTAX.
WHEN '/460'.
IT_RT-ITAX = WA_RT-BETRG + IT_RT-ITAX.
WHEN '/560'.
IT_RT-NET = WA_RT-BETRG + IT_RT-NET.
WHEN '/3F2'.
IT_RT-VPF = WA_RT-BETRG + IT_RT-VPF.
WHEN '/ZF5'.
IT_RT-PF = WA_RT-BETRG + IT_RT-PF.
WHEN '/552'.
IT_RT-ARREAR = WA_RT-BETRG + IT_RT-ARREAR.
WHEN '9876'.
IT_RT-STIPEN = WA_RT-BETRG + IT_RT-STIPEN.
WHEN '2410'.
IT_RT-VDA = WA_RT-BETRG + IT_RT-VDA.
WHEN '2310'.
IT_RT-CANTALL = WA_RT-BETRG + IT_RT-CANTALL.
WHEN '2210'.
IT_RT-EDUCALL = WA_RT-BETRG + IT_RT-EDUCALL.
WHEN '1ESI'.
IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
WHEN '/3E1'.
IT_RT-EEESI = WA_RT-BETRG + IT_RT-EEESI.
WHEN '/3E2'.
IT_RT-ERESI = WA_RT-BETRG + IT_RT-ERESI.
WHEN '2008'.
IT_RT-NSFTALL = WA_RT-BETRG + IT_RT-NSFTALL.
WHEN '/ZP1'.
IT_RT-CFPTX = WA_RT-BETRG + IT_RT-CFPTX.
ENDCASE.
ENDLOOP.
IT_RT-ARREAR = IT_RT-ARREAR + IT_RT-PF.
IT_RT-CFPEN = IT_RT-PF * ( 3059 / 10000 ).
IT_RT-CFEPS = IT_RT-PF * ( 6941 / 10000 ).
CLEAR EXSPEN.
EXSPEN = IT_RT-CFEPS - 541.
IT_RT-CFPEN = IT_RT-CFPEN + EXSPEN.
PERFORM ROUND_OFF CHANGING IT_RT-CFPEN.
IF IT_RT-CFEPS > 541.
IT_RT-CFEPS = 541.
ELSE.
IT_RT-CFEPS = IT_RT-CFEPS.
ENDIF.
IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL + IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL + IT_RT-MED + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS + IT_RT-SADV + IT_RT-MISC_PAY + IT_RT-ARREAR + IT_RT-STIPEN .
IT_RT-TOT_D = IT_RT-EPF_D
- IT_RT-HRARC
- IT_RT-TRDED
- IT_RT-MISC_D
- IT_RT-SADV_R
+ IT_RT-PTAX
+ IT_RT-ITAX
+ IT_RT-VPF
+ IT_RT-PF
+ IT_RT-EEESI + IT_RT-CFPTX.
IT_RT-EPS = IT_RT-BASIC * 833 / 10000.
IF IT_RT-EPS > 541.
IT_RT-EPS = 541.
IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
ELSE.
IT_RT-PENSION = IT_RT-BASIC * 1200 / 10000 - IT_RT-EPS.
ENDIF.
IT_RT-ADMINC = IT_RT-BASIC * 110 / 10000.
IT_RT-EDLI = IT_RT-BASIC * 50 / 10000.
IT_RT-EDLIADMIN = IT_RT-BASIC * 1 / 10000.
APPEND IT_RT.
CLEAR IT_RT.
ENDIF.
*-- For Off cycle run
IF PAYROLL-EVP-PAYTY IS NOT INITIAL AND
PAYROLL-EVP-OCRSN IS NOT INITIAL AND
PAYROLL-EVP-INOCR IS NOT INITIAL AND
PAYROLL-EVP-OCCAT EQ '02' AND
PAYROLL-EVP-PAYDT EQ PYENDDA.
LOOP AT PAYROLL-INTER-RT INTO WA_RT.
CASE WA_RT1-LGART.
WHEN '2600'.
IT_RT-MED = WA_RT-BETRG.
WHEN '2500'.
IT_RT-LTA = WA_RT-BETRG.
WHEN '2800'.
IT_RT-BONUS = WA_RT-BETRG.
ENDCASE.
ENDLOOP.
IT_RT-TOT_E = IT_RT-BASIC + IT_RT-HRA + IT_RT-CONV + IT_RT-SPCL + IT_RT-VDA + IT_RT-CANTALL + IT_RT-EDUCALL + IT_RT-NSFTALL + IT_RT-MED + IT_RT-LTA + IT_RT-LENC + IT_RT-BONUS + IT_RT-SADV + IT_RT-MISC_PAY + IT_RT-ARREAR + IT_RT-STIPEN.
IT_RT-TOT_D = IT_RT-EPF_D
- IT_RT-HRARC
- IT_RT-TRDED
- IT_RT-MISC_D
- IT_RT-SADV_R
+ IT_RT-PTAX
+ IT_RT-ITAX
+ IT_RT-VPF
+ IT_RT-PF
+ IT_RT-STIPEN
+ IT_RT-EEESI
+ IT_RT-CFPTX.
IT_RT-NET = IT_RT-TOT_E - IT_RT-TOT_D.
APPEND IT_RT.
CLEAR IT_RT.
ENDIF.
Edited by: Srikanth Kumar Talasu on Oct 22, 2008 4:04 PM
Similar Messages
-
Problem with Creating Info Record
Hello Gurus,
I've problem with Creating Info Record
i tried to create info record for Plant Specific/Purchase Org
The first Screen General Data is OK
i entered all the data in the next screen ie
Purchase Organization Data screen but i'm getting error
<b>Make an entry in all required fields</b>
but there is Mandatory Textbox ie "VALID TO" which im unable to select Bcos its Disabled
pls help me regarding this
thanks in advanceHi
Have u given the net price. <b>VALID TO</b> is the date until which the price shown in the info record is valid.
If there is no price that is valid on the current date, the last-valid price is displayed and the date field contains the day before the start of the next validity period (this may be 12.31.9999 if there is no further validity date). If all validit periods lie beyond the current date, the price of the next period is displayed. The date field then contains the end date of this period.
These validity periods we will maintain Purchse data CONDITIONS while creating info record. Check the validity period for the conditions.
Hope this will helps u
Ravi
Ravikumar Bolla -
Problem with updating a record method in a database
I've searched for the forums for info on this to no avail.
I am connecting to Access database, using the sun.jdbc.odbc.JdbcOdbcDriver.
I'm trying to be able to update 2 fields in a record (cost & quantity).
I have an addrecord method, an update method.
I can use the addrecord and it works great.
But (yep, there's always a but!), when I try to update only the 1 or 2 fields on a record, I get a message that says "syntax error in UPDATE statement"
I've written, deleted and re-written code & I'm going nuts.
Here are my database methods and the actionPerformed where it calls those methods. Is the error message regarding my UPDATE (sql) syntax?
Why does it work for adding, but not updating?? It seems my 1st if statement under my "update button" is never gone to... so maybe it's just a problem with my "if" statement.
Please help me before I go crazy! Thanks!
//flags
//snippet of code
private void enableButtons(boolean flag1)
boolean flag2 = false;
if (flag1 == false)
flag2 = true;
jbtUpdate.setEnabled(flag2); // was flag1 wouldn't work.
jbtDelete.setEnabled(flag1);
jbtAdd.setEnabled(flag1);
jbtFirst.setEnabled(flag1);
jbtNext.setEnabled(flag1);
jbtPrev.setEnabled(flag1);
jbtLast.setEnabled(flag1);
//...actionperformed(ActionEvent e)
else if (e.getSource() == jbtAdd)
jtfItem.requestFocus();
enableButtons(false);
jtfItem.setText("");
jtfDescription.setText("");
jtfQuantity.setText("");
jtfCost.setText("");
addFlag = true;
else if (e.getSource() == jbtUpdate)
double quantity1 = parseInt(jtfQuantity.getText());
double cost1 = parseCurrency(jtfCost.getText());
Item itemUpdate = new Item(jtfItem.getText(), jtfDescription.getText(),
cost1, (int)quantity1);
System.out.println("update button was clicked");
//first "if"
if ((jbtUpdate.isEnabled()) && (addFlag == false))
InventoryDB.updateField(itemUpdate);
currentItem = itemUpdate;
System.out.println("it's going to first if stmt");
//2nd "if"
if (addFlag == true)
InventoryDB.addRecord(itemUpdate);
currentItem = InventoryDB.moveFirst();
addFlag = false;
System.out.println("it's going to 2nd if stmt");
currentItem = itemUpdate;
performItemDisplay();
enableButtons(true);
System.out.println("it's going to last of update code");
//method snippets for database manipulation
public static void addRecord(Item item) throws SQLException
String query = "INSERT INTO Items (ItemNumber, ItemDescription, UnitCost, Quantity) " +
"VALUES ('" + item.getItem() + "', " +
"'" + item.getDescr() + "', " +
"'" + item.getCost() + "', " +
"'" + item.getQuantity() + "')";
Statement statement = connection.createStatement();
statement.executeUpdate(query);
statement.close();
close();
open();
public static void updateField(Item item) throws SQLException
String query = "Update Items SET " +// Items (ItemNumber, ItemDescription, UnitCost, Quantity) " +
"VALUES ('" + item.getCost() + "', " +
"'" + item.getQuantity() + "', " ;
// "WHERE ItemNumber = " ItemNumber "'"
// "WHERE ItemDescription = " ItemDescription "', ";
Statement statement = connection.createStatement();
statement.executeUpdate(query);
statement.close();
close();
open();
public static void updateRecord(Item item) throws SQLException
String query = "UPDATE Items SET " +
"ItemNumber = '" + item.getItem() + "', " +
"ItemDescription = '" + item.getDescr() + "', " +
"UnitCost = '" + item.getCost() + "', " +
"Quantity = '" + item.getQuantity() + "', " +
"WHERE ItemNumber = '" + item.getItem() + "'";
Statement statement = connection.createStatement();
statement.executeUpdate(query);
statement.close();
close();
open();
public static void deleteRecord(String ItemNumber) throws SQLException
String query = "DELETE FROM Items " +
"WHERE ItemNumber = '" + ItemNumber + "'";
Statement statement = connection.createStatement();
statement.executeUpdate(query);
statement.close();
close();
open();not familiar with this syntax,
public static void updateField(Item item) throws
s SQLException
String query = "Update Items SET " +// Items
ems (ItemNumber, ItemDescription, UnitCost, Quantity)
" +
"VALUES ('" + item.getCost() + "', " +
"'" + item.getQuantity() + "', " ;
// "WHERE ItemNumber = " ItemNumber "'"
// "WHERE ItemDescription = " ItemDescription
public static void updateRecord(Item item) throws
ws SQLException
String query = "UPDATE Items SET " +
"ItemNumber = '" + item.getItem() + "', " +
"ItemDescription = '" + item.getDescr() + "', " +
"UnitCost = '" + item.getCost() +
etCost() + "', " +
"Quantity = '" + item.getQuantity() + "', " +one ',' too many
"WHERE ItemNumber = '" + item.getItem() + "'"; -
Problem with Retrieving Parent records
Hi
I am facing some problem with Relation ship tables
I am able to retrieve all child relation record by using Parent record id, but the other why around is not working that is
I am unable to retrieve all parent records by using a child record.
Please can you help out this..
find the below sample method which i was trying
public HashMap<String, Record[]> getMemberRecords(Record[] rec,
RetrieveRelationshipsCommand relation,
RepositorySchemaEx repositorySchema, String code,
HashMap<String, Record[]> returnMap) throws MDMException {
LOG.debug("calling getMemberRecords");
HashMap<String, Record[]> returnVal = returnMap;
LOG.debug("Assigning returnType to default HashMap.");
try {
for (int recordCount = 0; recordCount < rec.length; recordCount++) {
LOG.debug("For recordCount = " + recordCount);
Record tempRec = rec[recordCount];
relation.setAnchorRecord(tempRec);
LOG.debug(" setting AnchorRecord = " + tempRec);
relation.setLoadRecords(true);
LOG.debug(" setting LoadRecords = " + true);
relation.setGetChildren(false);
LOG.debug(" setGetChildren has setup with = " + true);
relation.setAnchorRecordId(tempRec.getId());
LOG.debug(" setting AnchorRecordId = " + tempRec.getId());
relation.setRelationshipId(repositorySchema
.getRelationshipId(code));
LOG.debug("Before execution relation execute.");
relation.execute();
LOG.debug("After execution relation execute.");
RelationshipGroup group = relation.getRelationshipGroup();
LOG.debug("Retrieved Relationship Group.");
Relationship[] relat = group.getMembers();
LOG.debug("Length = "+relat.length);
Record[] tempRecords = null;
if (relat != null) {
int length = relat.length;
LOG.debug("Length = "+length);
tempRecords = new Record[length];
for (int count = 0; count < length; count++) {
tempRecords[count] = relat[count].getMemberRecord();
if (tempRecords != null) {
LOG
.info("Records size is not equal to Null So Calling recursive getMemberRecords.");
returnMap = getMemberRecords(tempRecords, relation,
repositorySchema, code, returnMap);
LOG
.debug("Setting HashMap Value Values with Parent ID, records[]");
returnVal.put(tempRec.getId().getString(), tempRecords);
} catch (SessionException se) {
MDMException exception = new MDMException();
ErrorContext ec = new ErrorContext();
ec.setErrorMessage(se.getMessage());
ec.setErrorCode("MetadataException : " + se);
LOG.fatal(se, se.getCause());
se.printStackTrace();
exception.setContext(ec);
throw exception;
} catch (IllegalArgumentException iae) {
MDMException exception = new MDMException();
ErrorContext ec = new ErrorContext();
ec.setErrorMessage(iae.getMessage());
ec.setErrorCode("MetadataException : " + iae);
LOG.fatal(iae, iae.getCause());
iae.printStackTrace();
exception.setContext(ec);
throw exception;
} catch (CommandException ce) {
MDMException exception = new MDMException();
ErrorContext ec = new ErrorContext();
ec.setErrorMessage(ce.getMessage());
LOG.fatal(ce, ce.getCause());
ce.printStackTrace();
exception.setContext(ec);
throw exception;
LOG.debug("Before returning from getMemberRecords");
return returnVal;Hi
I am facing some problem with Relation ship tables
I am able to retrieve all child relation record by using Parent record id, but the other why around is not working that is
I am unable to retrieve all parent records by using a child record.
Please can you help out this..
find the below sample method which i was trying
public HashMap<String, Record[]> getMemberRecords(Record[] rec,
RetrieveRelationshipsCommand relation,
RepositorySchemaEx repositorySchema, String code,
HashMap<String, Record[]> returnMap) throws MDMException {
LOG.debug("calling getMemberRecords");
HashMap<String, Record[]> returnVal = returnMap;
LOG.debug("Assigning returnType to default HashMap.");
try {
for (int recordCount = 0; recordCount < rec.length; recordCount++) {
LOG.debug("For recordCount = " + recordCount);
Record tempRec = rec[recordCount];
relation.setAnchorRecord(tempRec);
LOG.debug(" setting AnchorRecord = " + tempRec);
relation.setLoadRecords(true);
LOG.debug(" setting LoadRecords = " + true);
relation.setGetChildren(false);
LOG.debug(" setGetChildren has setup with = " + true);
relation.setAnchorRecordId(tempRec.getId());
LOG.debug(" setting AnchorRecordId = " + tempRec.getId());
relation.setRelationshipId(repositorySchema
.getRelationshipId(code));
LOG.debug("Before execution relation execute.");
relation.execute();
LOG.debug("After execution relation execute.");
RelationshipGroup group = relation.getRelationshipGroup();
LOG.debug("Retrieved Relationship Group.");
Relationship[] relat = group.getMembers();
LOG.debug("Length = "+relat.length);
Record[] tempRecords = null;
if (relat != null) {
int length = relat.length;
LOG.debug("Length = "+length);
tempRecords = new Record[length];
for (int count = 0; count < length; count++) {
tempRecords[count] = relat[count].getMemberRecord();
if (tempRecords != null) {
LOG
.info("Records size is not equal to Null So Calling recursive getMemberRecords.");
returnMap = getMemberRecords(tempRecords, relation,
repositorySchema, code, returnMap);
LOG
.debug("Setting HashMap Value Values with Parent ID, records[]");
returnVal.put(tempRec.getId().getString(), tempRecords);
} catch (SessionException se) {
MDMException exception = new MDMException();
ErrorContext ec = new ErrorContext();
ec.setErrorMessage(se.getMessage());
ec.setErrorCode("MetadataException : " + se);
LOG.fatal(se, se.getCause());
se.printStackTrace();
exception.setContext(ec);
throw exception;
} catch (IllegalArgumentException iae) {
MDMException exception = new MDMException();
ErrorContext ec = new ErrorContext();
ec.setErrorMessage(iae.getMessage());
ec.setErrorCode("MetadataException : " + iae);
LOG.fatal(iae, iae.getCause());
iae.printStackTrace();
exception.setContext(ec);
throw exception;
} catch (CommandException ce) {
MDMException exception = new MDMException();
ErrorContext ec = new ErrorContext();
ec.setErrorMessage(ce.getMessage());
LOG.fatal(ce, ce.getCause());
ce.printStackTrace();
exception.setContext(ec);
throw exception;
LOG.debug("Before returning from getMemberRecords");
return returnVal; -
Problem with non-matching records
I have 3 tables - TBL1 is a list of Conditions; TBL2 contains collected data; and TBL3 contains referenced details on the data in TBL2.
TBL2 contains some matching values from TBL1.
Ex.
TBL1
Condition
01 Test A
02 Test B
03 Test C
TBL2
Name, Condition, Value
Host101, 01 Test A, Yes
Host101, 02 Test B, No
Host101, 03 Test C, Yes
Host102, 01 Test A, No
Host102, 03 Test C, Yes
I have them linked TBL1 Left Outer to TBL2 and TBL2 Left Outer to TBL3.
My desire is to get the complete list of Conditions in TBL1 for each record in TBL2, even where there is no matching TBL1 value in TBL2 - so the report results of the above table data would be:
Host101
01 Test A Yes
02 Test B No
03 Test C Yes
Host102
01 Test A No
02 Test B
03 Test C Yes
So even though there is no data returned in TBL2 for Host102, 02 Test B, the record for that entry in TBL1 is still returned in the report.
Currently I have the report structured as follows -
{TBL2 Name}
TBL1 Condition TBL2 Value
Seems quite simple, but I must be missing something somewhere, as I am only able to get the data where the records match, so, in the example above, I am getting only -
Host102
01 Test A No
03 Test C Yes
Any assistance would be much appreciated. Thanks!
Also, I tried doing a simple new report using just TBL1 & TBL2 and still get the same results (also tried a Full Outer join as well).
Frustrating .......
Edited by: Dragon77 on May 17, 2010 2:05 PMAs I said, I have even tried removing TBL3 to make things even simpler - TBL1 & TBL2 Left Outer joined on the common field.
I have tried every combination that I can think of. We're talking on 4 fields in the report -
Group Header 1 = {TBL2 Name}
Group 2 = {TBL2 Unique Field}
Detail = TBL1 Condition TBL2 Value
Group Header 1 = {TBL2 Name}
Group 2 = {TBL2 Unique Field}
Group 3 = {TBL1 Condition} {TBL2 Value}
Detail Suppressed
No matter what I try, I only get matching records.
I've gone so far as to just have the minimal 3 fields
Group Header 1 = {TBL2 Name}
Group 2 = {TBL2 Unique Field}
Detail = TBL1 Condition
Group Header 1 = {TBL2 Name}
Group 2 = {TBL2 Unique Field}
Group 3 = {TBL1 Condition}
Detail Suppressed
The tables only have the 1 field in comon {TBL1, TBL2 - Condition)
This just doesn't make sense. {TBL1 Condition} should have ALL of its entries returned along with any matching records from {TBL2 Condition} - not just where they are equal. -
HRPY - Problem with upload payroll
Hi experts I need your help, I have a problem and I can't resolve.
In my job I need to move the payroll from a country (BR) to another country (MX), Each country is in different client.
To download the data from BR, I used the fm HCRM_PAYROLL_RESULTS_GET and return me all the sequences
and all tables asociates to employee (RT, CRT, etc). I work with Logical Database PNP.
for update the payroll in MX (with data of BR) I used some fm, for example I used the fm CU_READ_RGDIR to validate if exist
the sequences of the employee. (The employee exist in all tables of PA in MX) But the fm CU_READ_RGDIR always return me the table RGDIR empty.
The question is, If exist some function or some way to upload the data to RGDIR from a client to another client?przegladanieprywatne wrote:
Pages.app to pdf after that i converted pdf to ePub and i wanted to upload it....
Pages can export to epub directly. Try that. Using pdf in the middle is a formula for a mess. -
Pixelation problems with Live and Recorded Viewing
I'm having massive pixelation when viewing live HD channels or viewing recorded HD shows. When watching live TV the problem is active when I turn on a 2nd TV. We had tech support out and the trouble shooting did not resolve the problem. They thought it was related to bandwith. I'm not well versed on the technology, and don't feel as if I need to understand why their product is not working as it should. I'm paying for a product that is not functioning. What do I need to do as a consumer to obtain the customer service that is expected from AT&T?
Call and schedule another tech visit...Or download the Hyatt app, login with your att email account/password, run the troubleshoot test. This runs 5 tests, any problems found with these will help create a service ticket, if receive a green check mark, no problem found within tests ran. As you report increased issue with two TVs on, I suspect your on coax with cable issue. Inside wiring issues are billable, minimum $99 labor plus $55 for each cable run.If coax cable, looking at ends (compressed not screw or from), cable itself should be RG 6 not RG59, old wall plates, splitter (should only be one, Holland brand). If replacing the physical connections do not work, actually cable bad (store bought, RG59) best to either install up to two wireless receivers (one time charge $49 each) or have tech replace coax with cat5 ($55 per line) Are other issues possible, yes... But coax best describe your issue....Other possibilities include flaky receiver (replace receiver), failing port on RG (replace RG), or other wiring issues outside or inside... Test at nid for errors, no errors at nid is inside wiring issue. Foreign voltage from TV (especially newer TV with amplifier) needing TV grounded requiring you to have grounded outlets (electrician job if not grounded), bad ac power, many use power strip that goes flaky replace the power strip or plug direct into wall outlet. As problem is listed as recent, something changed, what is question and who is responsible for repair (paying to fix). If can rule out inside (electric/cable runs your issue) then equipment and outside is company issue. Request another service call, a fresh set of eyes main reveal something previous tech missed.
-
Problem with the garbage record getting printed at the beginning
Hello Friends,
I know that this problem is very difficult to solve without looking at my script and its program. But I will try asking anyways.
I have written the following code (Driver program) which uses to tables ZRAMCUSTMAST AND ZRAMCALLMAST.
ZRAMCUSTMAST has customer details like address etc.,
ZRAMCALLMAST has the call details that each
customer has done.
But when I print the details, it prints everything correctly but for each customer it prints some garbage
values as the first row.
Any feedback will be greatly appreciated. You can mail me the response also (singer_ram AT yahoo DOT com)
CODE in my driver program (SE38) -
*& Report ZRAMPROJSCRIPT *
REPORT zramprojscript .
TABLES : zramcustmast, zramjuncmast, zramcallmast.
DATA : itabcustmast LIKE zramcustmast OCCURS 1 WITH HEADER LINE,
itabjuncmast LIKE zramjuncmast OCCURS 1 WITH HEADER LINE,
itabcallmast LIKE zramcallmast OCCURS 1 WITH HEADER LINE.
DATA: type_of_call(1),
CALL_CHARGE type i, CALL_CHARGE_STRING(5), TOTAL_CHARGE type i,
hour(2), min(2), sec(2).
SELECT * FROM zramcustmast INTO TABLE itabcustmast.
*SELECT * FROM zramjuncmast INTO TABLE itabjuncmast.
CALL FUNCTION 'OPEN_FORM'
EXPORTING
APPLICATION = 'TX'
ARCHIVE_INDEX =
ARCHIVE_PARAMS =
DEVICE = 'PRINTER'
dialog = 'X'
form = 'ZRAMPROJSCRIPT'
language = sy-langu
OPTIONS =
MAIL_SENDER =
MAIL_RECIPIENT =
MAIL_APPL_OBJECT =
RAW_DATA_INTERFACE = '*'
IMPORTING
LANGUAGE =
NEW_ARCHIVE_PARAMS =
RESULT =
EXCEPTIONS
CANCELED = 1
DEVICE = 2
FORM = 3
OPTIONS = 4
UNCLOSED = 5
MAIL_OPTIONS = 6
ARCHIVE_ERROR = 7
INVALID_FAX_NUMBER = 8
MORE_PARAMS_NEEDED_IN_BATCH = 9
SPOOL_ERROR = 10
CODEPAGE = 11
OTHERS = 12
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
LOOP AT itabcustmast.
CALL FUNCTION 'START_FORM'
EXPORTING
ARCHIVE_INDEX =
form = 'ZRAMPROJSCRIPT'
language = sy-langu
STARTPAGE = ' '
PROGRAM = ' '
MAIL_APPL_OBJECT =
IMPORTING
LANGUAGE =
EXCEPTIONS
FORM = 1
FORMAT = 2
UNENDED = 3
UNOPENED = 4
UNUSED = 5
SPOOL_ERROR = 6
CODEPAGE = 7
OTHERS = 8
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'MAINPAGE'
function = 'SET'
type = 'BODY'
window = 'MAIN'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
clear itabcallmast.
refresh itabcallmast.
SELECT * FROM zramcallmast INTO TABLE itabcallmast WHERE customerid = itabcustmast-customerid.
SORT itabcallmast by calltype.
TOTAL_CHARGE = 0.
LOOP AT itabcallmast.
Local Call : 1 Rupee per Minute.
STD : 1.5 Rupees Per Minute
International calls : 5 Rupees Per minute
hour = itabcallmast-CALLDURATION+0(2).
min = itabcallmast-CALLDURATION+2(2).
sec = itabcallmast-CALLDURATION+4(2).
CASE itabcallmast-calltype.
WHEN 'L'.
CALL_CHARGE = ( ( hour * 60 * 60 ) + ( min * 60 ) + ( sec ) ) / 60.
WHEN 'S'.
CALL_CHARGE = ( ( ( hour * 60 * 60 ) + ( min * 60 ) + ( sec ) ) * 2 ) / 60 .
WHEN 'I'.
CALL_CHARGE = ( ( ( hour * 60 * 60 ) + ( min * 60 ) + ( sec ) ) * 5 ) / 60 .
ENDCASE.
CALL_CHARGE_STRING = CALL_CHARGE.
TOTAL_CHARGE = TOTAL_CHARGE + CALL_CHARGE.
CALL FUNCTION 'WRITE_FORM'
EXPORTING
element = 'MAINPAGE'
function = 'SET'
type = 'BODY'
window = 'MAIN'
IMPORTING
PENDING_LINES =
EXCEPTIONS
ELEMENT = 1
FUNCTION = 2
TYPE = 3
UNOPENED = 4
UNSTARTED = 5
WINDOW = 6
BAD_PAGEFORMAT_FOR_PRINT = 7
SPOOL_ERROR = 8
CODEPAGE = 9
OTHERS = 10
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDLOOP. " ************ itabCALLmast
CALL FUNCTION 'END_FORM'
IMPORTING
RESULT =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SPOOL_ERROR = 3
CODEPAGE = 4
OTHERS = 5
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
clear itabcallmast.
ENDLOOP. " ************** itabCUSTmast
CALL FUNCTION 'CLOSE_FORM'
IMPORTING
RESULT =
RDI_RESULT =
TABLES
OTFDATA =
EXCEPTIONS
UNOPENED = 1
BAD_PAGEFORMAT_FOR_PRINT = 2
SEND_ERROR = 3
SPOOL_ERROR = 4
CODEPAGE = 5
OTHERS = 6
IF sy-subrc <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.hi
good
check the following things-
1- Check the value for the field in the particular table,
2- Check the data you r passing from the driver program and the field that is printing the value in the sapscript screen.
3-check in the debug mode when the value is printing in the first row.
thanks
mrutyu -
Problem with inserting new records in Oracle Forms
Hi Friends,
I am a new user to Oracle Forms and I need a help from you people. The problem is as follows:
I have a data block in which I can display a number of records. In this data block the user will be able to edit the fields if no child records are found in another table. I have used when-new-record-instance to attain this scenario. All are text items. One item licensee_id which is made invisible by setting the property in property palette and required=no ( as this is the primary key of the table). Also the audit columns are made invisible.
The code for it is as follows:
DECLARE
v_alert_button NUMBER;
v_cnt NUMBER;
BEGIN
SELECT COUNT (*)
INTO v_cnt
FROM id_rev_contracts
WHERE licensee_id = :ID_REV_LICENSEES.licensee_id;
IF v_cnt > 0 THEN
set_item_property('ID_REV_LICENSEES.LICENSEE_NAME', UPDATE_ALLOWED, PROPERTY_FALSE);
ELSE
set_item_property('ID_REV_LICENSEES.LICENSEE_NAME', UPDATE_ALLOWED, PROPERTY_TRUE);
-- set_item_property('ID_REV_LICENSEES.LICENSEE_NAME', INSERT_ALLOWED, PROPERTY_TRUE);
END IF;
END;
Now in this data block I should also be able to insert new records and for the same I have used PRE-INSERT trigger and the code for it is as follows:
DECLARE
v_alert_button NUMBER;
CURSOR v_licensee_id IS SELECT id_rev_licensees_s.NEXTVAL FROM dual;
BEGIN
OPEN v_licensee_id;
FETCH v_licensee_id INTO :id_rev_licensees.licensee_id;
CLOSE v_licensee_id;
IF :id_rev_licensees.licensee_id IS NULL THEN
Message('Error Generating Next v_licensee_id');
RAISE Form_Trigger_Failure;
END IF;
:ID_REV_LICENSEES.created_by := :GLOBAL.g_login_name;
:ID_REV_LICENSEES.last_updated_by := :GLOBAL.g_login_name;
:ID_REV_LICENSEES.create_date := SYSDATE;
:ID_REV_LICENSEES.last_update_date := SYSDATE;
EXCEPTION
WHEN form_trigger_failure
THEN
RAISE form_trigger_failure;
WHEN OTHERS
THEN
v_alert_button :=
msgbox ('ERROR in Pre-Insert - ' || SQLERRM, 'STOP', 'Contact IST');
RAISE form_trigger_failure;
END;
Every thing is compiling fine but at the run time when I am trying to insert a new record I am receiving the following error:
FRM-40508:ORACLE error:unable to insert record
I also think the pre-insert record is not firing at the time of inserting a new record and saving it. So I request you to please delve into this problem and suggest me how to overcome this problem. Code snippets would do more help for me. If you need any other things from me please let me know. I will see if I could be of any help in that concern because I may not be able to send the entire form as it is.
Thanks and regards,
Vamsi K Gummadi.first of all
pre-insert fires after the implicit/explicit commit/commit_form is issued and before the real insert is submitted to the db.
i would suggest to remove the error handling part for the moment
because i believe you might be getting "ora-xxxx cannot insert null"
and also make visible the primary column to check if the pre-insert is executed.
it would be better to make visible for a while the not null columns of the table/block
i suppose that the block is insert allowed and you are using table as the source of the block and not any procedures or something... -
Serious problem with previous / next record in master-details relations
I have master-details relations like this (if master is A) :
A-B
A-C and C-D
When I move down with do_key('next_record') all values of all records in all blocks are OK. But when I move up, it doesn't work : all D block values are erased and I don't understand why ?
Thank you for your help.
Antoine LEFEBVRE.Blocks A and B are in the first canvas and blocks C et D are in the second canvas.
On next_record action from A the B is updated, C too and D too. But on previous_record action, D is not updates.
To display the second canvas I use a command button and into the WBP trigger there is :
go_block(C);
execute_query;
to be sure to execute query, but it's null.
What's your suggest ?
Thank you,
Antoine. -
Problem with Contains - missing records
Hi,
I have created a full-text catalog for my table tDoc, but when I search records with contains,
I dont get all records. I search for 16949, and with LIKE, I get all 5, but with CONTAINS I only
get three. Se image below.
What I am doing wrong?
It does not make any difference if I use wildcards (*) with contains.
/Daniel.Hi Samus
I hope you are still here, If so, then please close the thread by marking the answer that fit your needs or please inform us if the issue is still open. In the mean time I will try to give some
points that you need to consider
>> Full-text queries perform linguistic searches against text on
words and
phrases based on rules of a particular language.
* It is look like you use FTS as a "like" filter, and this is not the same! It's like using subtraction in math, in order to obtain the + behavior. It can be done [10-(-10)], but should it done? are you using the right operator if you want
to get "like" filter? In contrast to full-text search, the LIKE Transact-SQL predicate works on character patterns only.
* Jayakumaur gave you the great basic explanationIn the forum we can not always to write the exact full tutorial. It is more of a short solutions place, where we can point you to external links if needed.
* It is not that "/" is a noise exactly (actually this statement was wrong). It is more of "Separator" between words. SQL Server FTS engine recognize that this is not part of the word. Same with "," or spaces for example, but
not "_" which in most languages used as part of the word. The engine work on linguistic searches, like it "understand" the language (using the dictionary it has), and therefore it recognize starting/ending of "words". It is working
on word but phrases as well.
FTS separates the string into individual words based on word boundaries (Separators).
You can see the words split result using this statement:
SELECT * FROM sys.dm_fts_parser (' "Standard ISO_TS_16949_2009" ', 1033, 0, 0)
GO
Now you can see that those words do not fit your search :-)
* Moreover you can chake this "Standard ISO_TS_16949_2009 is", and see what a noise word mean (the "is" is a Noise word and not the "/")
* Now you can try "Certifikat ISO TS/16949" and you will see that "/" is not a word at all but only a "Separator".
>> FTS will not match the exact word, but the
meaning of the words in the search condition.
>>See more:
http://msdn.microsoft.com/en-us/library/ms142571.aspx#like
* Configure and Manage Word Breakers and Stemmers for FTS (by default "_" is not a Breakers but you can add it if you want!)
http://technet.microsoft.com/en-us/library/ms142509%28v=sql.110%29.aspx
* sys.dm_fts_parser (Transact-SQL)
http://technet.microsoft.com/en-us/library/cc280463%28v=sql.110%29.aspx
[Personal Site] [Blog] [Facebook] -
Problem with user,it records to me ANONYMOUS
Hello,
I have problems at the time of recording the user name, I have triggers that it controls to me that usuary it conducted some operation BD.
As user name places ANONYMOUS to me
some possible solution
thank you very much
Juan PabloJuan,
Check out: Re: APP_USER in table column default
Joel -
Problem with Fetching Million Records from Table COEP into an Internal Tabl
Hi Everyone ! Hope things are going well.
Table : COEP has 6 million records.
I am trying to get records based on certain criteria, that is, there are atleast 5 conditions in the WHERE clause.
I've noticed it takes about 15 minutes to populate the internal table. How can i improve the performance to less than a minute for a fetch of 500 records from a database set of 6 million?
Regards,
Owais...The first obvious sugession would be to use the proper indexes. I had a similar Issue with COVP which is a join of COEP and COBK. I got substanstial performance improvement by adding "where LEDNR EQ '00'" in the where clause.
Here is my select:
SELECT kokrs
belnr
buzei
ebeln
ebelp
wkgbtr
refbn
bukrs
gjahr
FROM covp CLIENT SPECIFIED
INTO TABLE i_coep
FOR ALL ENTRIES IN i_objnr
WHERE mandt EQ sy-mandt
AND lednr EQ '00'
AND objnr = i_objnr-objnr
AND kokrs = c_conarea. -
Problem with Purchase Info Record Condition Data ( ME11)
Hi all,
I am trying post Data for Purchase Info Records with Conditions data.
I am using a standard Batch Input Method ( LSMW).
Object 0060
Method 0000
Program Name RM06IBI0
Program Type B Batch Input
I am able to post data only for the condition type PB00. for other condition types FRC1 & FRA1 not able to post the data ( also session is not giving any error).
Therefore I am trying out witH BAPI option ( BAPI_PRICES_CONDITIONS),
when i try to test the BAPI i am getting an error "Record KNUMH = 0000668598,
VARNUMH = 000000000000000000000000000000: det. data missing ( Structue BAPICONDIT) .
i am passing below mentioned values to the structue BAPICONDIT
OPERATION 009
SD_DOC
ITM_NUMBER 000000
COND_NO 0000668598
COND_COUNT 02
APPLICATIO M
COND_TYPE FRC1
SCALETYPE F
SCALE_QTY 0.000
SCALE_VAL 1.000000000
CURRENCKEY USD
CURREN_ISO USD
CALCTYPCON C
COND_VALUE 2.000000000
CONDCURR USD
COND_ISO USD
COND_P_UNT 1
COND_UNIT KG
CONUNITISO KG
NUMCONVERT 1
DENOMINATO 1
BASE_UOM KG
BASEQTYISO KG
CONDITIDX 01
Please Suggest what else needs to be passed to get the BAPI working.
Regards,
SriramHi Phemmy,
it is possible to create PO before info record .info record establishes the relationship between vendor and your particular material.
to answer your 2nd question:
it is possible to create inforecord automatically during PO creation. in the ME2N screen, in the material tab, put the material code. then go to item details.in the materail data tab, you will get infoupdate check it.and then inforecord will be created automatically.
Thanks
Nisha
Edited by: nishaprasad on Jan 14, 2010 11:29 AM -
Problem with IDOC Control Record
Hi All,
mine is File to Idoc scenario, everything is fine, but Idoc is posted with 56 status.Even I'm giving control record at Mapping and check the option at Idoc adapter "Apply control data from payload". Sender port is not populated at Idoc and Sender and receiver partner numbers are taken other than what I had provided at mapping. Can any one explain what can I do now.Hi Ajay,
It depends whther u wnt to go for automatic filling of control record or filling it from the payload.
In the first case, it will fill the control record with the ALE config u hv done i.e. partner profiles and port defn in we20 & we21.
In the second case also, it will do exactly the same, but in this case there shud be a corresponding ale config to wht u r filling in the mapping. The sender, receiver ports, partners, msgtype values populated in mapping shud be exactly same as tht in ur ALE config.
So, in ur case, compare the values filled in the mappin with tht of the ALE configuration.
Regards,
Akshay
Maybe you are looking for
-
Issue with non calculated column in a fact table
Hi All, With 3 facts(Fact1,Fact2,Fact3) and 2 Confirmed Dimensions my joins work fine in Criteria when I include All calculated columns from facts. If I try to include a non calculated column from Fact1(Which is a number Data type) Columns from Fact2
-
I cannot get my iPad recognized by Windows 8.1
I have an original iPad that works just fine on my old HP laptop that has Windows Vista. I have a new HP 2 in 1 laptop, HP Split 13 x 2, that has Windows 8.1. I'm pretty sure when I first got the laptop and it only had Windows 8 on it that my iPad
-
JDBC Receiver Adapter: Guarnteed delivery
Hi All, I have a JDBC receiver scenario. I was investigating the Guarnteed ( Exactly Once ) delivery option of the JDBC receiver adapter. The Following two scenarios needs to be validated The Technical scenario is SAP R/3 --- XI - Database Scenari
-
How efective set price to purchase order
I have created purchase order with 600 lines where isnt set price for each item. Now I want through UI API set the correct price to each price cell in row based on width and height of item. Now Im going through all lines in matrix, get dimensions, ca
-
Connecting tables in SD and FI.
Hi, Can anyone tell me how to connect (on which keys) the following tables: LFA1, BSEG, LIKP,VBRK, VBRP. Please reply as soon as possible. Thanks, Amit.