Jumping to a "record number"
Is there a way to specify this in a JNDI search against an ADAM ldap object store:
Given a sort by uid field.
Go to the 40th record, and return the next 10 objects?
I don't want to have to retrieve all the records, just skip to the 40th and then grab only those ten.
I want to page records to a JSF/RichFaces control that supports a serializable row key. My ADAM key is uid, a unique text string.
I looked at the PagedResultsControl and as I understand it, it can request a large resultset, but caches the result on the (ADAM/ldap?) server until the "page" is requested.
However, what I don't understand is whether I can ask for a specific page.
As in, set up pages with 10 rows each. Can I then request the records from Page 5 ( records 40 to 49) ?
An alternative which I just read about is using ADAM's "range" attribute...so I would request the whole objectset -- but set a range of say, 600 to 609 as the records returned.
Similar Messages
-
Cursor Jumping to last record when query mode for Multi-record block.
I have a multi-record block. the seq field has this validation to check that there should not be a gap
in sequence for S_type and cer_dl field.The program unit is as below.
PROCEDURE seq_validation IS
--Validation to check that there is no gaps in sequence for S_TYPE and cer_dl fields
l_value_to_check varchar2(100);
l_seq_found number;
l_curr_sequence number;
l_new_value varchar2(100);
l_found boolean:=FALSE;
l_new_set boolean := FALSE; --s_type and cer_dl are different from previous set.
begin
if trim(:b1.s_type) is not null
or trim(:b1.cer_dl) is not null
then
-- Program continues here only if all the items are not null
-- Get information from record that needs to be validated
l_value_to_check := trim(:b1.s_type) || ':'|| trim(:b1.cer_dl) ;
l_curr_sequence := :sequence;
if :SYSTEM.CURSOR_RECORD = '1' then
---to check sequence is entered as 1 in the first record
message('Error:Sequence should start with 1');
raise form_trigger_failure;
end if;
go_item('b1.XYZ');
else
FIRST_RECORD;
while :SYSTEM.LAST_RECORD != 'TRUE'
loop
l_found := FALSE;
l_new_value := trim(:b1.S_type) || ':'|| trim(:cer_dl) ;
if l_new_value = l_value_to_check then --
l_new_set:= FALSE;
l_seq_found := :seq;
if l_seq_found >= l_curr_sequence then
go_item('b1.seq');
l_new_set := FALSE;
elsif l_seq_found < l_curr_sequence - 1 then
go_item('b1.sequence');
l_found := FALSE;
elsif l_seq_found = l_curr_sequence - 1 then
l_found:= TRUE;
go_item('b1.xyz); --go to next item
end if;
else
l_new_set := TRUE;
end if;
NEXT_RECORD;
end loop;
if l_new_set then
go_item('b1.xyz'); -- go to next item
else
if not l_found then
message('Error:Sequence should be in order.');
go_item('b1.seq');
raise form_trigger_failure;
end if;
end if;
go_item('b1.xyz'); ---go to next item
end if;
end if;
end;
In the insert mode its working fine(unless you gurus feel to change to make it more perfect.
When I say enter-query and put 'IAS' in the s_type field and then do a execute query it brings all the records of 'IAS'.
Now as I want to update the records, and when I navigate across field(s_type,cer_dl,Seq,xyz) using tab and move the cursor down on second
record(IAS N 2 N), what happens is when I navigate to sequence field the cursor jumps to LAST RECORD( IAS Y 3 N ) of LAST field XYZ.
I am putting the sample record
s_type cer_dl seq xyz
IAS N 1 N
IAS N 2 N
IAS N 3 N
IAS N 4 N
IAS Y 1 N
IAS Y 2 N
IAS Y 3 N
The cursor moves to last record --IAS -Y -3-N when I tab across the second record.When I say enter-query and put 'IAS' in the s_type field...For your validation to work you must not allow users to enter records in the middle of a block, clear records from the block or query specific records. If you allow the users to enter a query then you are allowing 2 of the rules to be broken.
-
How can i get the tax code from Condition record number
Hi all,
i have the Condition record number from which i have to get the tax code as i looked inthe KNOP that Condition record number there but no tax code is maintained there.
so is there any other way to find the tax code for particular Condition record number
Regards
sureshhi suresh,
can u tell me the field name for condition record number and in which table it is stored.
because i knew one condition number which is stored in table EKKO and the field name is
KNUMV- Number of the document condition.
from ekko take relevant details and look for ekpo where u find the tax code
filed name of the tax code id MWSKZ- Tax on sales/purchases code -
How to get the Data Record Number in BI 7.0?
Hi All,
In our requirement we need to load the Data Record Number in the DSO. I got the Request ID and Data Packet Number but not the Data Record Number.
Does anyone has any idea?Hi......
When the data is activated in DSO, it is written to the table of active data, where it is then available for reporting. Requests are sorted by the key of the DataStore object, request ID, data package ID, or data record number.
You just load the data to the DSO.....and activate it.......it will autometically get generated.......You cannot load it from one DSO to other beacuse in this case Change log table is used........and this filed is in active table..........I think you need this fir reporting purpose.....so load it and activate the DSO......then it will be available in your active table for reporting.........because reporting is done on active table.......
Check this link :
http://help.sap.com/saphelp_nw04s/helpdata/en/a9/49453cabf4ef6fe10000000a114084/frameset.htm
Hope this helps you....
Regards,
Debjani....
Edited by: Debjani Mukherjee on Sep 16, 2008 5:22 PM
Edited by: Debjani Mukherjee on Sep 16, 2008 5:25 PM -
Modify Record Number in a Random Access File
Hi Does anyone know if I can modify the record number in the random access file hardware.dat for each hardware record each time and update it in hardware.dat to display it? Also why does it say "Record does not exist" if I modify the record number for a hardware and try to update it but could not find that record?
Here is the code below:
// Exercise 14.11: HardwareRecord.java
package org.egan; // packaged for reuse
public class HardwareRecord
private int recordNumber;
private String toolName;
private int quantity;
private double cost;
// no-argument constructor calls other constructor with default values
public HardwareRecord()
this(0,"",0,0.0); // call four-argument constructor
} // end no-argument HardwareRecord constructor
// initialize a record
public HardwareRecord(int number, String tool, int amount, double price)
setRecordNumber(number);
setToolName(tool);
setQuantity(amount);
setCost(price);
} // end four-argument HardwareRecord constructor
// set record number
public void setRecordNumber(int number)
recordNumber = number;
} // end method setRecordNumber
// get record number
public int getRecordNumber()
return recordNumber;
} // end method getRecordNumber
// set tool name
public void setToolName(String tool)
toolName = tool;
} // end method setToolName
// get tool name
public String getToolName()
return toolName;
} // end method getToolName
// set quantity
public void setQuantity(int amount)
quantity = amount;
} // end method setQuantity
// get quantity
public int getQuantity()
return quantity;
} // end method getQuantity
// set cost
public void setCost(double price)
cost = price;
} // end method setCost
// get cost
public double getCost()
return cost;
} // end method getCost
} // end class HardwareRecord-------------------------------------------------------------------------------------------------
// Exercise 14.11: RandomAccessHardwareRecord.java
// Subclass of HardwareRecord for random-access file programs.
package org.egan; // package for reuse
import java.io.RandomAccessFile;
import java.io.IOException;
public class RandomAccessHardwareRecord extends HardwareRecord
public static final int SIZE = 46;
// no-argument constructor calls other constructor with default values
public RandomAccessHardwareRecord()
this(0,"",0,0.0);
} // end no-argument RandomAccessHardwareRecord constructor
// initialize a RandomAccessHardwareRecord
public RandomAccessHardwareRecord(int number, String tool, int amount, double price)
super(number,tool,amount,price);
} // end four-argument RandomAccessHardwareRecord constructor
// read a record from a specified RandomAccessFile
public void read(RandomAccessFile file) throws IOException
setRecordNumber(file.readInt());
setToolName(readName(file));
setQuantity(file.readInt());
setCost(file.readDouble());
} // end method read
// ensure that name is proper length
private String readName(RandomAccessFile file) throws IOException
char name[] = new char[15], temp;
for(int count = 0; count < name.length; count++)
temp = file.readChar();
name[count] = temp;
} // end for
return new String(name).replace('\0',' ');
} // end method readName
// write a record to specified RandomAccessFile
public void write(RandomAccessFile file) throws IOException
file.writeInt(getRecordNumber());
writeName(file, getToolName());
file.writeInt(getQuantity());
file.writeDouble(getCost());
} // end method write
// write a name to file; maximum of 15 characters
private void writeName(RandomAccessFile file, String name) throws IOException
StringBuffer buffer = null;
if (name != null)
buffer = new StringBuffer(name);
else
buffer = new StringBuffer(15);
buffer.setLength(15);
file.writeChars(buffer.toString());
} // end method writeName
} // end RandomAccessHardwareRecord-------------------------------------------------------------------------------------------------
// Exercise 14.11: CreateRandomFile.java
// creates random-access file by writing 100 empty records to disk.
import java.io.IOException;
import java.io.RandomAccessFile;
import org.egan.RandomAccessHardwareRecord;
public class CreateRandomFile
private static final int NUMBER_RECORDS = 100;
// enable user to select file to open
public void createFile()
RandomAccessFile file = null;
try // open file for reading and writing
file = new RandomAccessFile("hardware.dat","rw");
RandomAccessHardwareRecord blankRecord = new RandomAccessHardwareRecord();
// write 100 blank records
for (int count = 0; count < NUMBER_RECORDS; count++)
blankRecord.write(file);
// display message that file was created
System.out.println("Created file hardware.dat.");
System.exit(0); // terminate program
} // end try
catch (IOException ioException)
System.err.println("Error processing file.");
System.exit(1);
} // end catch
finally
try
if (file != null)
file.close(); // close file
} // end try
catch (IOException ioException)
System.err.println("Error closing file.");
System.exit(1);
} // end catch
} // end finally
} // end method createFile
} // end class CreateRandomFile-------------------------------------------------------------------------------------------------
// Exercise 14.11: CreateRandomFileTest.java
// Testing class CreateRandomFile
public class CreateRandomFileTest
// main method begins program execution
public static void main( String args[] )
CreateRandomFile application = new CreateRandomFile();
application.createFile();
} // end main
} // end class CreateRandomFileTest-------------------------------------------------------------------------------------------------
// Exercise 14.11: MenuOption.java
// Defines an enum type for the hardware credit inquiry program's options.
public enum MenuOption
// declare contents of enum type
PRINT(1),
UPDATE(2),
NEW(3),
DELETE(4),
END(5);
private final int value; // current menu option
MenuOption(int valueOption)
value = valueOption;
} // end MenuOptions enum constructor
public int getValue()
return value;
} // end method getValue
} // end enum MenuOption-------------------------------------------------------------------------------------------------
// Exercise 14.11: FileEditor.java
// This class declares methods that manipulate hardware account records
// in a random access file.
import java.io.EOFException;
import java.io.File;
import java.io.IOException;
import java.io.RandomAccessFile;
import java.util.Scanner;
import org.egan.RandomAccessHardwareRecord;
public class FileEditor
RandomAccessFile file; // reference to the file
Scanner input = new Scanner(System.in);
// open the file
public FileEditor(String fileName) throws IOException
file = new RandomAccessFile(fileName, "rw");
} // end FileEditor constructor
// close the file
public void closeFile() throws IOException
if (file != null)
file.close();
} // end method closeFile
// get a record from the file
public RandomAccessHardwareRecord getRecord(int recordNumber)
throws IllegalArgumentException, NumberFormatException, IOException
RandomAccessHardwareRecord record = new RandomAccessHardwareRecord();
if (recordNumber < 1 || recordNumber > 100)
throw new IllegalArgumentException("Out of range");
// seek appropriate record in a file
file.seek((recordNumber - 1) * RandomAccessHardwareRecord.SIZE);
record.read(file);
return record;
} // end method getRecord
// update record tool name in file
public void updateRecordToolName(int recordNumber, String newToolName)
throws IllegalArgumentException, IOException
RandomAccessHardwareRecord record = getRecord(recordNumber);
if (record.getRecordNumber() == 0)
throw new IllegalArgumentException("Record does not exist");
// seek appropriate record in file
file.seek((recordNumber - 1) * RandomAccessHardwareRecord.SIZE);
record.setToolName(newToolName);
record = new RandomAccessHardwareRecord(
record.getRecordNumber(), record.getToolName(), record.getQuantity(), record.getCost());
record.write(file); // write updated record to file
} // end method updateRecordToolName
// update record in file
public void updateRecordQuantity(int recordNumber, int newQuantity)
throws IllegalArgumentException, IOException
RandomAccessHardwareRecord record = getRecord(recordNumber);
if (record.getRecordNumber() == 0)
throw new IllegalArgumentException("Record does not exist");
// seek appropriate record in file
file.seek((recordNumber - 1) * RandomAccessHardwareRecord.SIZE);
record.setQuantity(newQuantity);
record = new RandomAccessHardwareRecord(
record.getRecordNumber(), record.getToolName(), record.getQuantity(), record.getCost());
record.write(file); // write updated record to file
} // end method updateRecordQuantity
// update record in file
public void updateRecordCost(int recordNumber, double newCost)
throws IllegalArgumentException, IOException
RandomAccessHardwareRecord record = getRecord(recordNumber);
if (record.getRecordNumber() == 0)
throw new IllegalArgumentException("Record does not exist");
// seek appropriate record in file
file.seek((recordNumber - 1) * RandomAccessHardwareRecord.SIZE);
record.setCost(newCost);
record = new RandomAccessHardwareRecord(
record.getRecordNumber(), record.getToolName(), record.getQuantity(), record.getCost());
record.write(file); // write updated record to file
} // end method updateRecordCost
// add record to file
public void newRecord(int recordNumber, String toolName, int quantity, double cost)
throws IllegalArgumentException, IOException
RandomAccessHardwareRecord record = getRecord(recordNumber);
if (record.getRecordNumber() != 0)
throw new IllegalArgumentException("Record already exists");
// seek appropriate record in file
file.seek((recordNumber - 1) * RandomAccessHardwareRecord.SIZE);
record = new RandomAccessHardwareRecord(recordNumber, toolName, quantity, cost);
record.write(file); // write record to file
} // end method newRecord
// delete record from file
public void deleteRecord(int recordNumber) throws IllegalArgumentException, IOException
RandomAccessHardwareRecord record = getRecord(recordNumber);
if (record.getRecordNumber() == 0)
throw new IllegalArgumentException("Account does not exist");
// seek appropriate record in file
file.seek((recordNumber - 1) * RandomAccessHardwareRecord.SIZE);
// create a blank record to write to the file
record = new RandomAccessHardwareRecord();
record.write(file);
} // end method deleteRecord
// read and display records
public void readRecords()
RandomAccessHardwareRecord record = new RandomAccessHardwareRecord();
System.out.printf("%-10s%-15s%-15s%10s\n","Record","Tool Name","Quantity","Cost");
try // read a record and display
file.seek(0);
while (true)
do
record.read(file);
while (record.getRecordNumber() == 0);
// display record contents
System.out.printf("%-10d%-15s%-15d%10.2f\n",record.getRecordNumber(),
record.getToolName(), record.getQuantity(), record.getCost());
} // end while
} // end try
catch (EOFException eofException) // close file
return; // end of file was reached
} // end catch
catch (IOException ioException)
System.err.println("Error reading file.");
System.exit(1);
} // end catch
} // end method readRecords
} // end class FileEditor-------------------------------------------------------------------------------------------------
// Exercise 14.11: TransactionProcessor.java
// A transaction processing program using random-access files.
import java.io.IOException;
import java.util.NoSuchElementException;
import java.util.Scanner;
import org.egan.RandomAccessHardwareRecord;
public class TransactionProcessor
private FileEditor dataFile;
private RandomAccessHardwareRecord record;
private MenuOption choices[] = {MenuOption.PRINT, MenuOption.UPDATE, MenuOption.NEW,
MenuOption.DELETE, MenuOption.END};
private Scanner input = new Scanner(System.in);
// get the file name and open the file
private boolean openFile()
try // attempt to open file
// call the helper method to open the file
dataFile = new FileEditor("hardware.dat");
} // end try
catch (IOException ioException)
System.err.println("Error opening file.");
return false;
} // end catch
return true;
} // end method openFile
// close file and terminate application
private void closeFile()
try // close file
dataFile.closeFile();
} // end try
catch (IOException ioException)
System.err.println("Error closing file.");
System.exit(1);
} // end catch
} // end method closeFile
// create, update or delete the record
private void performAction(MenuOption action)
int recordNumber = 0; // record number of record
String toolName; // tool name of the hardware instrument
int quantity; // total amount of items
double cost; // hareware tool price
int choice; // choose an update option
int newRecordNumber; // the updated record number
String newToolName; // the updated tool name
int newQuantity; // the updated quantity
double newCost; // the updated cost
try // attempt to manipulate files based on option selected
switch(action) // switch based on option selected
case PRINT:
System.out.println();
dataFile.readRecords();
break;
case NEW:
System.out.printf("\n%s%s\n%s\n%s","Enter record number,",
"tool name, quantity, and cost.","(Record number must be 1 - 100)","? ");
recordNumber = input.nextInt(); // read record number
toolName = input.next(); // read tool name
quantity = input.nextInt(); // read quantity
cost = input.nextDouble(); // read cost
dataFile.newRecord(recordNumber, toolName, quantity, cost); // create new record
break;
case UPDATE:
System.out.print("\nEnter record number to update (1 - 100): ");
recordNumber = input.nextInt();
record = dataFile.getRecord(recordNumber);
if (record.getRecordNumber() == 0)
System.out.println("Record does not exist.");
else
// display record contents
System.out.printf("%-10d%-12s%-12d%10.2f\n\n", record.getRecordNumber(),
record.getToolName(), record.getQuantity(), record.getCost());
System.out.printf("%s%s","\nEnter 1 to update tool name, ",
"2 to update quantity, or 3 to update cost : ");
choice = input.nextInt();
if (choice == 1)
System.out.print("Enter new record tool name : ");
newToolName = input.next();
dataFile.updateRecordToolName(recordNumber,newToolName); // update record
// tool name
// retrieve updated record
record = dataFile.getRecord(recordNumber);
// display updated record
System.out.printf("%-10d%-12s%-12d%10.2f\n", record.getRecordNumber(),
record.getToolName(), record.getQuantity(), record.getCost());
else if (choice == 2)
System.out.print("Enter new record quantity : ");
newQuantity = input.nextInt();
dataFile.updateRecordQuantity(recordNumber,newQuantity); // update record
// quantity
// retrieve updated record
record = dataFile.getRecord(recordNumber);
// display updated record
System.out.printf("%-10d%-12s%-12d%10.2f\n", record.getRecordNumber(),
record.getToolName(), record.getQuantity(), record.getCost());
else if (choice == 3)
System.out.print("Enter new record cost : ");
newCost = input.nextDouble();
dataFile.updateRecordCost(recordNumber,newCost); // update record cost
// retrieve updated record
record = dataFile.getRecord(recordNumber);
// display updated record
System.out.printf("%-10d%-12s%-12d%10.2f\n", record.getRecordNumber(),
record.getToolName(), record.getQuantity(), record.getCost());
} // end else
break;
case DELETE:
System.out.print("\nEnter an account to delete ( 1 - 100): ");
recordNumber = input.nextInt();
dataFile.deleteRecord(recordNumber); // delete record
break;
default:
System.out.println("Invalid action.");
break;
} // end switch
} // end try
catch (NumberFormatException format)
System.err.println("Bad input.");
} // end catch
catch (IllegalArgumentException badRecord)
System.err.println(badRecord.getMessage());
} // end catch
catch (IOException ioException)
System.err.println("Error writing to the file.");
} // end catch
catch (NoSuchElementException elementException)
System.err.println("Invalid input. Please try again.");
input.nextLine();
} // end catch
} // end method performAction
// enable user to input menu choice
private MenuOption enterChoice()
int menuChoice = 1;
// display available options
System.out.printf("\n%s\n%s\n%s\n%s\n%s\n%s","Enter your choice",
"1 - List hardware records", "2 - Update a hardware record",
"3 - Add a new hardware record", "4 - Delete a hardware record", "5 - End program\n?");
try
menuChoice = input.nextInt();
catch (NoSuchElementException elementException)
System.err.println("Invalid input.");
System.exit(1);
} // end catch
return choices[menuChoice - 1]; // return choice from user
} // end enterChoice
public void processRequests()
openFile();
// get user's request
MenuOption choice = enterChoice();
while (choice != MenuOption.END)
performAction(choice);
choice = enterChoice();
} // end while
closeFile();
} // end method processRequests
} // end class TransactionProcessor-------------------------------------------------------------------------------------------------
// Exercise 14.11: TransactionProcessorTest.java
// Testing the transaction processor.
public class TransactionProcessorTest
public static void main(String args[])
TransactionProcessor application = new TransactionProcessor();
application.processRequests();
} // end main
} // end class TransactionProcessorTest-------------------------------------------------------------------------------------------------
Below is the sample data to be entered into the random input file hardware.dat :
Record Tool Quantity Cost
Number Name
3 Sander 18 35.99
19 Hammer 128 10.00
26 Jigsaw 16 14.25
39 Mower 10 79.50
56 Saw 8 89.99
76 Screwdriver 236 4.99
81 Sledgehammer 32 19.75
88 Wrench 65 6.48Message was edited by:
egan128
Message was edited by:
egan128
Message was edited by:
egan128Hi Does anyone know if I can modify the record number
in the random access file hardware.dat for each
hardware record each time and update it in
hardware.dat to display it?If the "record number" is data that is stored in the file, then you can modify it. More precisely: it is possible to modify it.
The rest of the question had too many incompatible verbs for me to understand it.
Also why does it say
"Record does not exist" if I modify the record number
for a hardware and try to update it but could not
find that record?"Record does not exist" is a fairly reasonable error message for the situation where a program looks for a record but cannot find it. Are you asking why that particular lump of code actually does that?
(One thousand lines of code removed) -
Identify record number being processed in Custom Integrator?
Hi gurus,
We have developed a custom integrator using a PL/SQL packaged procedure as the interface. Inside this package we insert into a custom table.
We are on Oracle Financials 11.5.10.2.
The custom table is located in a custom schema called CGL.
Our requirement is to perform some validation in the database package when the Web ADI infrastructure is processing the first row in the excel spreadsheet that the user is using to upload data.
We have a header row with the following columns.
Source System
Feeder System
Version Number
When the user chooses Oracle => Upload option from the Excel menu, we have to validate that the Version Number is valid i.e. we have to validate that the previous version of the file for the Source System and Feeder System combination has been successfully processed by the subsequent programs before the user is allowed to upload the next version of the file for this combination.
Our requirement is to perform the validation when row number 1 is being processed. However, I have not been able to find any documentation that allows us to identify the record number in PL/SQL.
Alternately, is there an environment variable or some other way to populate row numbers in excel spreadsheets being downloaded using the template so it can be passed to the package and used to identify the row being processed.
Any help in this regard will be greatly appreciated.
VenkatHi Venkat,
Would you give a try with the following option:
Define a column in your layout, and set the default type to formula and enter an excel formula like
=IF(ISBLANK(C7);"";ROW()-ROW($B$6))
This function should put a number into the column and it should start with one, followed by 2,3 etc. The 7,C,B,6 needs to be set according your layout. I hope you can manage this.
Assuming your sheet has 100 lines, you shall have then a 1-100 in this column. I would secure this column, read only flag in the layout.
Any further explanation needed? Just replay here.
br, Volker -
PO item Condition Record number and delivery address of PO - Need a table n
Hello Experts,
I need some help as I have searched enough but did not find any solution.
I need a table name where I can find Condition Record number for PO line item.
As I have to create a new PO Layout in which I have to mention each & every condition type with value for line item.
I need to know one more thing that from which table I will get delivery address number so on the basis of that I can read entries from table ADRC.
Thanks in advance.
BhagatHI,
The First Question is regarding the PO Conditions.
For Extracting the same. we have to Go to The Table EKKI and in this table pass the PO Number and after entering the PO NUmber ,at each item level we will have a condition record number KNUMV created,
collect the condition record number and pass the value in KONV table ,in that table we will get all the conditions and its values maintained.
The second question is the delivery Address
the Delivey address comes from four ways
Plant
EKPO -Pass PO NUmber - collect the plant and pass in table T001W to get the address number
and pass the address number to ADRC table
Customer (third party)
IN table EKPO -collect the customer Number-KUNNR and pass that value to KNA1 table and then get the address number and then get the address from ADRC table.
Direct address number ( created by t code MEAN- Type ME01)
This adress number-ADRNR can be taken from EKPO table and pass this value to adrc table to get the address.
Vendor ( subcontracting)
In this IN EKPO we will have the vendor field -LIFNR and this field collect the vendor number and pass in LFA1 and get the address number and then pass the address number to ADRC table
If in EKPO,the address number and customer vendor field are blank then it picked from the plant and we have to default the Plant Address
Hope so it helps
Regards
Anjanna. -
Vendor Master Record number ranges
Hi,
We have one requirement . At present my client is maintaining the vendor master record number ranges with 4 digits. Ex. 0001 to 9999
His present requirement is that to maintain the number ranges with 4 digits .ex. 00001 to 99999. They want this should apply even to existing records. Ex: Old number 2345 , they want the present number should be 02345.
Request you to please help in resolving the issue. Thanks in advance for the help. Matter is urgent
Thanks
D.K.Lakshmi narayanaHello Lakshmi,
It seems to me these are your alternatives.
1) For each old vendor in the 4-digit scheme, create a new vendor master record in the 5-digit scheme with the leading zero. Then, transfer all open documents/master records (invoices, purchase orders, info records, etc.) from the old vendor to the new vendor. Then, block the old vendor.
2) Same as previous except instead of changing all open documents, only change the master data (e.g., info records or long term contracts or agreements) to the new vendor master record and continue to use the old vendor master record until the open documents are closed. Then, block the old vendor master record.
I think option 2 will be the "safer" choice. Plus, for reporting, you will probably need to continue using both vendor numbers for a while.
Maybe someone else has an easier way...
Cheers,
Larry -
Why is records number different?
Hi expert,
I have loaded R/3 GL data into a cube(0FIGL_C01) successful. But one thing confused me very much which is: the transfered and added records' number is different. In my case, transfered records are 117991, but the added are 87929. I have checked the detail message in Monitor, where the data deduction of update to cube took place after update rule, before the update rule all the data number are same( the system generated 2 data packages for this single request, in each packge the different records number added to cube with transfered happened just after the update rule), this means something happened in update rule, right? but I checked the update rule, there's no any routine exist. So could you please tell me what does any operations cause this result?Hi Paolo,
Thank you very much for your reply. In my understanding of your explanation, if Chars in a cube for example: company code, business area, G/L account, currency type, fiscal year, fiscal year/period, and KFs like Total Debit Postings,Total credit postings, Cumulative Balance. If two records from R/3 which all the chars are same, then only one record will be keeped in the cube but the value of KFs will be added. Am I correct? But if somehow, someone load the data(Full load) one more time, what will be the result?
thank you in advance
Message was edited by:
Ryan Zhang -
Finding CRM Order number from Interaction Record number
In our scenario when a CRM Order is created, an interaction record also gets simultaneously created. If I want to find out the Order number based on the corresponding interaction record number, how will I achieve it through linking tables?
Hi,
Use FM CRM_ORDER_READ and check ET_DOC_FLOW.
Hope this helps!
Best regards,
Caíque Escaler -
XD02 : Previous Master Record Number
Hi,
in the customer master data we have this field : "Previous Master Record Number" (KNB1-ALTKN)
here we can enter only one number, is there any possibility to enter more than one number in this field ?
because for each customer i have two or three previous number !
Please advise.
Regards.Hi,
It is a free field of length 10 digits. You can either manage to input all the numbers in that 10 digits or you can increase the field space in the table.
Regards,
Mike -
Unable to link Condition record number with prices maintained in APO
Hi Guru's,
I need to understand how and where can i see the details of a condition record number maintained in KONP table and use this cond rec to fetch the exact details for a material and customer.
I am a APO consultant, not SD. My SD teams reply that their is some conversion logic written in ABAP which automatically calculates the mat-cust prices. This got me confused.
What is this cond record nu and do we maintain this specifically for 1 product/location or it is for prod-loc combination or separately and later it maps the prod-loc combination as required (how)?
Can you please explain how we maintain prices in ECC, in very simple language?
Thanks in advance.HI
I think you tax VK stand for SD for you check it once again FTXP
Regards
Kailas Ugale -
Table having info record no(infnr) and condition record number (knumh)
Hi ,
can anyone tell in which table i can find KNUMH and INFNR fields ?
i want to check a PIR record number having scale qty in it
for dat i require wat is the condition rec number ??
thanks and regards
venkat
Edited by: venkat sharma gaddala on Jun 3, 2009 2:20 PMHi Nicole,
yes , wat u said is right but wen u do ME11 transaction
in dat conditions tab we we get into screen where we will be filling scale qty for a condition
this might be stored in one of the condition tables with certain condition number.
now i want to check the PIR which are having [ scale qty NE 0 ]
so wer do i check
if i go to EINA or EINE table these tables dont have scale qty fields. -
Duplicate Condition Record Number !
Hi Experts,
I have a question on condition record number:
I have a Material SH00001 in more than one Sales Orgs. Example: MTD and NTD.
1. Is it possible SAP generates the same condition record number (field- KNUMH) for both sales organisation when I created two records separately at VK11 for each sales orgs for price?
2. Is it possible SAP automatically generates two condition record numbers when I create a ccondition record at VK11 (for price )
for a material SH00001 for a sales org MTD for two unit of measures. (e.g PC and KG)
3. Is it possible SAP automatically generates two condition record numbers when I change a ccondition record at VK12 (for price )for a material SH00001 for a sales org MTD from one unit of measure KG to PC??
ThanksHi
For one condition record in VK11, system will create one number. And if your are creating new record with slight difference, new number will generate.
Conclusion, no two condition records can have same number.
Secondly, if you change record in VK12, record number will not change. -
Hi,
I have a situation where in a SA with LP agreement type, one item has 3 conditions PB00 for different periods.
Valid from Valid
Valid from
valid to
Price
01.01.2013
01.02.2013
10
02.02.2013
01.03.2013
11
02.03.2013
31.12.9999
10
Now in A016
Rows 1 and 3 have the SAME Condition record number, So changing Price in row one automatically changes row 3. How can this be resolved?
Thanks.
Richard
Message was edited by: Ajay RichardHi Raghavendra,
I do not have access to the this particular system!! so is this normal procedure what the SS shows. So basically if the price on the future validity period is changed the old/past validity is automatically updated? But why is there a link between the two. If you see the screenshot the other 2 validity periods have a different condition record number.
This is unrelated to prev question but on my client I see that in the SA I can only give one validuty period per item level. How do I enter multiple validity periods with different prices in a SA for one live item? The "Change gross condition PB00 validity Period" : All fields are greyed out.
Thanks.
Message was edited by: Ajay Richard
Maybe you are looking for
-
Hi, Does anyone have code examples I can use to generate a vendor payment from outgoing payments? I am trying to automate the creation of a check when the user finishes making an outgoing payment. I need to assign the check number and create the chec
-
OneNote not showing some images
On some pages, screenshots, which have been inserted with OneNote 2010 are not shown in OneNote 2013. I only see a frame with a red X in it. Other users with the 2010 version still see the screenshot. Any ideas?
-
Help me restore my iMac please.
Okay there is something seriously wrong with my iMac and I don't have any type of support left from Apple. My iMac has been running really slow lately and even freezing when just having Firefox and iTunes open it's ridiculous. I'm trying to just rest
-
Building a dll with labview for CVI
Hi, I am making some abstract hardware layers for some instruments and i use to work with Labwindows CVI. But i have found ONE instrument, the Instek pst3201 alimentation which is ONLY created with Labview. So i downloaded the 8.6 LV demo and builded
-
SOAP sender adapter with client authentication
Hi, Can you please tell me the steps to be followed to configure SOAP sender adpater for HTTPS with client authentication. Thanks