Problem in Sales order creation BDC
Dear ABAPers,
I have Developed the BDC For VA01 Transaction code.While creating the Sales order it automatically creates the Serial number.But in BDC i am getting the Error message 'Serial Number is Being Created for the Material'.I am getting this message only for few serial numbers.What could be the Problem.
Thanks & Regards,
Ashok.
Hi
U chk ur recording..Because that serail number autamitacally picking or u are record that serial number.According to ur recording only uhave prepare ur flat file.
Better u condiser ur FUnctional consulatant.
Note:
When ever u record the BDC program u must sit with Functional consulatnt. Otherwise problem with u only.
Regards:
Prabu
Similar Messages
-
BAPI - Problem in Sales order creation
Hi Friends,
I have problem in Sales order creation using BAPI ,I am getting a messsage - Error in creating document ,I have sent the code along with this mail ,can you help it out.
Code:
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text FOR FIELD p_auart.
PARAMETERS: p_auart TYPE auart OBLIGATORY.
SELECTION-SCREEN END OF LINE.
Sales organization
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text1 FOR FIELD p_vkorg.
PARAMETERS: p_vkorg TYPE vkorg OBLIGATORY.
SELECTION-SCREEN END OF LINE.
Distribution channel
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text2 FOR FIELD p_vtweg.
PARAMETERS: p_vtweg TYPE vtweg OBLIGATORY.
SELECTION-SCREEN END OF LINE.
Division.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text3 FOR FIELD p_spart.
PARAMETERS: p_spart TYPE spart OBLIGATORY.
SELECTION-SCREEN END OF LINE.
SKIP 1.
Sold-to
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text4 FOR FIELD p_sold.
PARAMETERS: p_sold TYPE kunnr OBLIGATORY.
SELECTION-SCREEN END OF LINE.
Ship-to
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text5 FOR FIELD p_ship.
PARAMETERS: p_ship TYPE kunnr OBLIGATORY.
SELECTION-SCREEN END OF LINE.
SKIP 1.
Material
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text6 FOR FIELD p_matnr.
PARAMETERS: p_matnr TYPE matnr OBLIGATORY.
SELECTION-SCREEN END OF LINE.
Quantity.
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text7 FOR FIELD p_menge.
PARAMETERS: p_menge TYPE kwmeng OBLIGATORY.
SELECTION-SCREEN END OF LINE.
Plant
SELECTION-SCREEN BEGIN OF LINE.
SELECTION-SCREEN COMMENT 2(20) v_text9 FOR FIELD p_plant.
PARAMETERS: p_plant TYPE werks_d OBLIGATORY.
SELECTION-SCREEN END OF LINE.
Data declarations.
DATA: v_vbeln LIKE vbak-vbeln.
DATA: header LIKE bapisdhead1.
DATA: headerx LIKE bapisdhead1x.
DATA: item LIKE bapisditem OCCURS 0 WITH HEADER LINE.
DATA: itemx LIKE bapisditemx OCCURS 0 WITH HEADER LINE.
DATA: partner LIKE bapipartnr OCCURS 0 WITH HEADER LINE.
DATA: return LIKE bapiret2 OCCURS 0 WITH HEADER LINE.
DATA: lt_schedules_inx TYPE STANDARD TABLE OF bapischdlx
WITH HEADER LINE.
DATA: lt_schedules_in TYPE STANDARD TABLE OF bapischdl
WITH HEADER LINE.
Initialization.
INITIALIZATION.
v_text = 'Order type'.
v_text1 = 'Sales Org'.
v_text2 = 'Distribution channel'.
v_text3 = 'Division'.
v_text4 = 'Sold-to'.
v_text5 = 'Ship-to'.
v_text6 = 'Material'.
v_text7 = 'Quantity'.
v_text9 = 'Plant'.
Start-of-selection.
START-OF-SELECTION.
Header data
Sales document type
header-doc_type = p_auart.
headerx-doc_type = 'X'.
Sales organization
header-sales_org = p_vkorg.
headerx-sales_org = 'X'.
Distribution channel
header-distr_chan = p_vtweg.
headerx-distr_chan = 'X'.
Division
header-division = p_spart.
headerx-division = 'X'.
headerx-updateflag = 'I'.
Partner data
Sold to
partner-partn_role = 'AG'.
partner-partn_numb = p_sold.
APPEND partner.
Ship to
partner-partn_role = 'WE'.
partner-partn_numb = p_ship.
APPEND partner.
ITEM DATA
itemx-updateflag = 'I'.
Line item number.
item-itm_number = '000010'.
itemx-itm_number = 'X'.
Material
item-material = p_matnr.
itemx-material = 'X'.
Plant
item-plant = p_plant.
itemx-plant = 'X'.
Quantity
item-target_qty = p_menge.
itemx-target_qty = 'X'.
APPEND item.
APPEND itemx.
Fill schedule lines
lt_schedules_in-itm_number = '000010'.
lt_schedules_in-sched_line = '0001'.
lt_schedules_in-req_qty = p_menge.
APPEND lt_schedules_in.
Fill schedule line flags
lt_schedules_inx-itm_number = '000010'.
lt_schedules_inx-sched_line = '0001'.
lt_schedules_inx-updateflag = 'X'.
lt_schedules_inx-req_qty = 'X'.
APPEND lt_schedules_inx.
Call the BAPI to create the sales order.
CALL FUNCTION 'BAPI_SALESDOCU_CREATEFROMDATA1'
EXPORTING
sales_header_in = header
sales_header_inx = headerx
IMPORTING
salesdocument_ex = v_vbeln
TABLES
return = return
sales_items_in = item
sales_items_inx = itemx
sales_schedules_in = lt_schedules_in
sales_schedules_inx = lt_schedules_inx
sales_partners = partner.
Check the return table.
LOOP AT return WHERE type = 'E' OR type = 'A'.
EXIT.
ENDLOOP.
IF sy-subrc = 0.
WRITE: / 'Error in creating document'.
ELSE.
Commit the work.
COMMIT WORK AND WAIT.
WRITE: / 'Document ', v_vbeln, ' created'.
ENDIF.
Regards,
Dineshwhat messages u are gettting in RETURN ? Please check the RETURN tables data.
[code]CALL FUNCTION 'BAPI_SALESDOCU_CREATEFROMDATA1'
EXPORTING
sales_header_in = header
sales_header_inx = headerx
IMPORTING
salesdocument_ex = v_vbeln
TABLES
return = return
sales_items_in = item
sales_items_inx = itemx
sales_schedules_in = lt_schedules_in
sales_schedules_inx = lt_schedules_inx
sales_partners = partner.
Regards
Prabhu -
Problem with Sales Order Creation
Hi,
In my sales order creation program if item qty is zero, it should not include that item in the order. It is not working properly with this example it is creating same order for customer 1001 and 1004. It is checking for qty = 0 condition and executing 'continue' statememt , then it is not checking 'At end of kunnr' and creating only one order for all the remaining 4 items from 1001 and 1004 other than 0 qty's.
kunnr matnr qty order#
1001 51038 723 102255
1001 51054 0
1001 51055 0
1004 51038 207 102255
1004 51054 236 102255
1004 51055 219 102255
it should create like this.
kunnr matnr qty order#
1001 51038 723 102255
1001 51054 0
1001 51055 0
1004 51038 207 102256
1004 51054 236 102256
1004 51055 219 102256
Please help me fix this.
Thanks,
veni.Hi,
Here is the code.
WHEN 'ORDERS'.
DESCRIBE TABLE gt_zprice LINES lv_cnt.
DO lv_cnt TIMES.
lv_index = sy-index + 4.
READ LINE lv_index FIELD VALUE chbox.
IF chbox = 'X'.
READ TABLE gt_zprice INTO gs_zprice1 INDEX sy-index.
IF sy-subrc EQ 0.
gs_zprice1-index = sy-index.
APPEND gs_zprice1 TO gt2_zprice.
CLEAR gs_zprice1.
ENDIF.
ENDIF.
CLEAR chbox.
ENDDO.
gt4_zprice[] = gt2_zprice[].
SORT gt4_zprice BY kunnr vtweg.
LOOP AT gt4_zprice INTO gs_zprice1.
IF gs_zprice1-crmemo IS INITIAL.
AT NEW kunnr.
MOVE 'Y' TO lv_flg.
ENDAT.
IF lv_flg EQ 'Y'.
PERFORM headerdata.
PERFORM texts.
CLEAR lv_flg.
ENDIF.
IF gs_zprice1-eohqty IS INITIAL.
CONTINUE.
ENDIF.
PERFORM itemdata.
APPEND gs_zprice1 TO gt3_zprice.
CLEAR gs_zprice1.
AT END OF kunnr.
PERFORM call_function.
PERFORM update_pricetable.
PERFORM errorcheckandcommit.
REFRESH gt2_zprice.
CLEAR chbox.
REFRESH partner.
REFRESH item.
REFRESH itemx.
REFRESH lt_schedules_in.
REFRESH lt_schedules_inx.
REFRESH conditions1.
REFRESH order_text.
lv_itemno = 10.
ENDAT.
ELSE.
REFRESH gt2_zprice.
CLEAR chbox.
ENDIF.
ENDLOOP.
WRITE: /01(179) sy-uline.
PERFORM headings.
WRITE: /01(179) sy-uline.
PERFORM displaydata.
ENDCASE.
Thanks,
Veni. -
Pricing problem in sales order creation
Hi friends,
My requirement is to create sales order with ref to contract i am using 'BAPI_SALESORDER_CREATEFROMDAT2' , and I am extracting data from konv table to get price through condition record , but i am getting 4 messages
(S) SALES_HEADER_IN has been processed successfully
(E) Condition PR00 is not allowed as header condition
(W) The sales document is not yet complete: Edit data
(E) Sales document was not changed
and i am not getting pricing for created sales order document.
please help.
regards,
Sravani.hi
ZK01 Company Selling Price - 21.86 INR 1 BT - 2360.41 INR for 108 BT( your statement)
This is wrong 21.86 x 108 = 2360.88 and not 2360.41 as written by you
so the calculation of the system is correct
21.86 x 108 =2360.88
1.41 x 108 =153.28
So total 23.27 x 108 = 2513.16 (also 2360.88 +152.28 also is equal to 2513.16 )
you can check in calculator
If ZK01 is showing a wrong vaule 2360.41 instead of correct 2360.88 in your case then you need to check the configuration of that condition type
The subtoatal valuew hich you have written is also wrong because of ZK01
Problem lies in ZK01 check the other controls and rounding profile etc of ZK01 in V/06
Regards
Raja -
Problem in Sales Order Creation with reference to Contract
Hi All,
We had enhanced Contracts (VA41) by adding fields thru append structures in VBAP and the same is provided in the "Additional Data B" tab at the item level.
The Z fields are populated with data and gets saved along with the contracts line items.
But when a sale order is created with reference to a contract, the data in the Z fields (maintained in Append Structures) of the contract are not getting copied to the line item of Sales orders.
Should a routine be necessarily written for copying Z fields from contract to Sales orders or Copy control must be set up for Z fields separately?
Any info on this would help.
Thanks,
K.V.VenkatasubramanianHi VJ,
The copying from Contract to Orders worked. I copied the standard routine (151) in data transfers and added the code to transfer Z fields from work area CVBAP to work area VBAP and attached the same in the copy control. It works!!!
Thanks for the help VJ.
Cheers,
Venkat -
Problem in Sales order Creation
Dear Group,
While creating sales order with MTO senario by using material master strategy group as 20 i am getting the following error.
ERROR
Receiver categ. is not allowed by settlement prof. SD1 for this sender
Message no. KD031
Please guide me how to proceed further.
Thanks
TamilHi
Please find the below link
Receiver categ. is not allowed by settlement prof. SD1 for this sender
Hope this will helps you
Dasaradha -
Problem in Sales Order with specific condition type.
Hello Experts,
I'm facing a problem in sales order creation for a specific condition type.
the actual scenario is as below,
We have created a new condition type for special discount.This condtion type is applicable only for specific sales channels.Also the discount percentage has to fetched from a custom table.
To achieve this I've written a user exit "RV64A999"
In the FM, i've calculated the subtotal and fetched the discount percentage and calculated the discount amount. After implementing this, the SO were been created properly. for all the line items the discount amount was getting calculated properly.
But then I added a condition at the top of code in exit that the calculation for the new condition type should happen only for selected sales channels.
But after adding this condition in code, i'm facing problem. Now when I create/ change any SO, the discount amounts are getting calculated incorrectly. I'm getting discount amount even if the line item subtotal amount is zero (0).
Any help or pointers reagrding this issue will be very helpful and highly appreciated.Hi ..
Check your config. again or debug the routine code with your ABAPer and find the problem area.
-Maharshi -
Reena Prabhakar - Sales order creation Using BAPI
Hi Reena,
This is Dinesh,i also face problem in Sales order creation using BAPI if you can send me the code it would be great help to me.
Regards,
DineshAnyhow, here is the code that I am using currently which works perfectly well. Not sure if it will be of any help to you, since the values to the BAPI come from the Webdynpro application. I have values stored in my "Test data directory" which I use for testing from the backend.
FUNCTION ztest.
Call the BAPI to create Sales Order
CALL FUNCTION 'BAPI_SALESORDER_CREATEFROMDAT2'
EXPORTING
order_header_in = l_order_header
IMPORTING
salesdocument = l_salesdocument
TABLES
return = it_return
order_items_in = it_order_items
order_partners = it_order_partners
order_schedules_in = it_order_schdl
order_conditions_in = it_order_conditions
order_text = it_order_text.
READ TABLE it_return WITH KEY type = 'E'.
IF sy-subrc = 0.
*-- error occured
CALL FUNCTION 'BAPI_TRANSACTION_ROLLBACK'.
ELSE.
*-- no error
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'.
ENDIF.
ENDFUNCTION. -
How to trigger an Idoc from Sales order creation and change
We are trying to trigger Idoc from sales order creation and change we have done following setting mentioned below:
Follow the below steps:
1. Go to NACE transaction
2. Select V1 application and select OUTPUT TYPES
3. Select the required output type and double click on Processing routines.
4. Enter Medium as DISTRIBUTION ALE, Program as RSNASTED and Routine as ALE_PROCESSING.
5. Save it.
message type ORDERSP in the distribution model (BD64).
Follow the below steps to configure the condition records:
1. Go to NACE
2. Select V1 application and select CONDITION RECORDS
3. Select the requred output type and click on Condition records
4. Selection screen will be displayed.
5. Go for execution. In that screen enter the selection criteria. For eg Condition record is based on Sales document type. Then
Sales doc type = OR
Funt = SP
Partner = blank. It means there is no restriction on partner numbers.
Medium = A
date/time = 4
Lan = EN.
Note: partner is left blank means, the sales order of type OR can be send to all partners.
6. Save it.
We also done ALE configuration.
We are facing problem that from VA02 "No output has been selected for printing Message no. V1102"
Kindly suggest the solution.
Regards,
Sharad DixitHi ,
Please check the total error description and diagnosis as below :
InVa02 enter SO go to extras->output->Header->edit.You can find a table with all the triggered output types. Choose the output type BA00 with medium Distribution ALE and go for 'Processing log'. It will show you the error description.
Please paste the diagnosis .
Thanks and Regards,
P.Bharadwaj -
User Exit during Sales Order Creation - New Line Item needed
I have a situation during the process of sales order creation. If a Material in a line item has say 27 EA and the Base Unit is EA. But the Sales Unit is CSE. Then whenever the user enters 27 EA and presses enter he should get two line items.
The first line item needs to convert to maximum number of CSE posible and the rest will be the second line item with the remaining EA. The order isn't important but that is what is needed. Question is how do I approach this problem and code my user exit accordingly and where do I code it.
I was looking at SAPMV45A and saw the program MV45AIZZ which is meant as a user exit for any PAI event handling. If anybody has encountered this kind of requirement can you please share your view on this.
I will definitely reward points for useful answers.
ClarkHello Mahendra
The requirement is as follows :
PART 1:
Sales Order Enter:
1. When a line item is entered on a sales order (VA01 or VA02), at enter, check the sales unit of measure (VBAP-VRKME).
Do not check line items where item category (VBAP-PSTYV) = TANN, TAPS or ZTAP. TANN are free goods that should not be considered for consolidation. TAPS & ZTAP are lower level materials as a result of product selection. They will be attached to a higher-level material with an item category of TAX, which is relevant for consolidation.
Do not check items where VRKME <> EA
2. If VRKME = EA, go to MARM for MATNR.
3. Go to record where alternate unit of measure (MEINH) = CSE, get the value from the numerator field (UMREZ).
4. Divide the order quantity (VBEP-WMENG) by UMREZ.
5. If the result is greater than 1.0, the customer has ordered more than one case and a new line item needs to be added to the sales order for the case quantity.
6. Add a new line to VBAP for the same material with the case quantity. If not a whole value, the remainder of eaches (bottles) should update the qty on the first item on VBAP.
Part 1 is relevant for order types ZCA, ZOR, ZSO, RE, ZSM
PART 2:
Batch Job to run prior to the Delivery Due List:
1. Read VBUK for Delivery Status (LFSTK) = A (delivery not processed). Get all of the document numbers (VBELN).
2. Go to VBEP for those document numbers to get the goods issue date for the order. There will be many records in VBEP for the same sales order. Look at all orders with a goods issue date (WADAT) of next day.
3. Go to VBAK for those document numbers to see if there are multiple sales orders for the same Sold To party (KUNNR).
4. For customers who have more than one order in VBAK, search all line items (for all orders). If there are no duplicate materials across sales orders, do nothing.
Do not check line items where item category (VBAP-PSTYV) = TANN, TAPS or ZTAP. TANN are free goods that should not be considered for consolidation. TAPS & ZTAP are lower level materials as a result of product selection. They will be attached to a higher-level material with an item category of TAX, which is relevant for consolidation.
Do not check line items where reason for rejection (VBAP-ABGRU) is not blank
5. If there are duplicate materials, go through the same logic as in part 1. If the quantity across the sales orders adds up to greater than one case, add the appropriate quantity to a new line item on the first sales order. If there is a remainder qty, update the line item on the first sales order with this qty. In this case, the quantities on the second sales order needs to be closed out with a reason for rejection code of 50, Line Item Consolidation. If there is no remainder, update the qty on this item directly.
Part 2 is relevant for order types ZOR, ZCA, ZSM
This batch job will have to be run manually for Day Pick orders. The end of this program should automatically kick off the delivery due list for Day Pick orders, shipping condition 02.
Business Justification:
The business requires that like order line items be consolidated to one line item prior to the order going to the warehouse for picking. This will aid in picking at the warehouse as well as result in the customer invoice not reflecting more than one line item for the same material. In the case where the customer has truly ordered more than a case, i.e;, 1 case, 2 bottles, the documents in SAP will still reflect 2 lines. -
Automatic Sales Order Creation from PO in B1
Hi,
I have this scenario. Purchase order is created in SAP B1 (Business One) which triggers automatic Sales Order creation in SAP ECC 6.0.
The requirement:
For the combination of PO number and Sold to party there should be only one sales order created.
The problem:
Sometimes for the same PO duplicate Sales orders(sometimes 3,4) are getting created in ECC.
Possible causes:
Probably no validations in the interface.
Question:
1. First of all, is it an SD issue or PI (process integration) issue.
2. If it is an SD issue, as a functional consultant what / where can we do to prevent this.
Thanks.
Edited by: SAP SD_Newbie on Oct 20, 2011 6:59 PM
Edited by: SAP SD_Newbie on Oct 20, 2011 6:59 PM
How do I move this to "ERP - Sales and Distribution (SD) General", because this question is not just related to "ERP SD Sales" but SD in general. Isn't there an option for the users to a question from one forum to another.1. First of all, is it an SD issue or PI (process integration) issue.
- May be PI, or SD or both. I am not sure about the integration mechanism/program so I am not able to pinpoint.
2. If it is an SD issue, as a functional consultant what / where can we do to prevent this.
In t.code VOV8, go to the sales document type. Select value A in the field, check Purchase order Number. Then go to t.code OVAH, there make the message number V4 115 as error message. This will not allow the creation of the sales order, if the Purchase order number duplicates. I assume in your process, the purchase order number is populated in the PO number field of the sales order overview screen.
Regards, -
Multiple Input nodes to Sales Order creation using VC
hi experts,
i'm using BAPI_SALESORDER_CREATEFROMDAT1 for sales order creation in VC. i would like to get header details in a form and also like to get the multiple items details in a table and partner details in atable.i've to take both contents to create a sales order. when i click the submit button in the form " sold-to party is not defined" error message displayed and when i click the submit in table "DOC TYPE is not mentioned" message is shown. but i've given both details.
can you help me to solve my problem and i've confused which field is used to mention the sold-to party in the header_in.
thanks and regards
basheerHi,
I was facing the same problem while creating the sales order. Try giving following values:
If you are creating standard order, then enter 'TA' instead of 'OR' to the Doc_Type and enter 'AG' as a partner role instead of 'SP'.
It works for me. I don't know how??? Lets try.
Also try following links.
http://sap.ittoolbox.com/groups/technical-functional/sap-dev/problems-working-with-bapi_salesorder_createfromdat2-527937#
http://www.saptechies.com/bapi_salesorder_createfromdat2/
Thanks,
Prashant
(PS. Do Rewards Points for useful answers) -
Multiple Inputs to Sales Order creation using VC
hi experts,
i've created sales order creation application using VC and i would like to give the header details in a input form and item details in a table for multiple entries. how can i combine these two inputs to create sales order. now i got two submit buttons one in form and one in table. how can i make it as a common submit button.
please give solutions to solve my problem.
Thanks and regards
basheerHi,
I saw your Bapi,but which is the Output port you are using to get the Out put data :salesorder.
To submit all the input UI elements at a Time follow the below steps.
Steps:
1.click on the connecting line b/w the tables and the data service .
2.click on the configure
3.now In the event name Dropdown ,put star * Sysmbol before the submit button ,Like : *submit
do the above step for another tabel also.
now in Runtime ,clicking on the Submit button in the Formview will trigger the other tabel inputs also.
I hope now you got ,
Govindu -
Is it possible to avoid duplicate material in Sale order creation
Dear SD gurus
Is it possible to avoid material duplication in va01 sale order creation. For amendment purpose the marketing user making new line item with amended qty instead of quantity change. kindly advise me to solve the problem.
Thanks & Regards
R.UdayakumarHI,
There's no alternative to user disciplibe . Business reqt are sometimes like this only
what you can do is use exit mv45afzz in saels order and put coding logic . this will surely work.
{Removed by Moderator}
regards
Edited by: Lakshmipathi on Aug 29, 2009 6:13 PM -
Regarding Sales Order Creation
hi all,
I have one requirement , i.e Our Client has one wish that for every customer he is fixing some line items means 5 or 6 line items. IF it is less than that sales order will not create for that particular customer and it needs to show warning message .
How can i achieve this .
Plz send some suggetions to solve this problem.
Regards
Rami Reddyhi,
pls see the below threads.
SALES ORDER creation using BAPI
sales order creation/change
XML upload of data into SAP - Sale order creation
sales order creation
Sales order creation BAPI
thanks
karthik
Maybe you are looking for
-
DSC Alarm Setup - what went wrong?
I have a DSC application reading +- 1100 NI OPC tags into SVE from four different PLC's. While I do engineering I move the application between two PC's depending on which one is avalable at the time to do engineering. The Citadel database has the
-
Unable to write SOAP response to a file
Hi, I am trying to capture SOAP response into a file using the method mentioned in the below given wiki but running into errors. File gets read but it doesn't get deleted and it gets processed infinitely without creating any monitoring messages. ht
-
How can you take off the volume limit?, How can you take off the volume limit?
How can you take off the volume limit on iPod touch ?
-
Captivate 5 Messing up Text in Captivate 4 files
I am able to open my Captivate 4 files from CP 5 but all of my text styles, position, and indentations are messed up. Also Shift enter no longer works in Captivate 5. I do not want every line to have bullets when I use them.
-
IPhoto 09/08 interoperability?
I do an admittedly very dangerous thing with iPhoto. I have my iPhoto library stored on a shared drive, on an underpowered G4 iMac, that is running Tiger (10.4.11). I run iPhoto on the iMac, but I also run iPhoto on my MacBook Pro, and access the lib