BODS : Column delimiter errors on SAPR/3 datastore
Hi All.
Can anyone advise as to why this error comes up while we try to pull data from SAP R/3 TABLE.
We are using a datastore which has the option to Generate & execute / direct download with a path defined locally on the BODS dev server.
We dont see the error on production server.
Can anyone advise as to how to resolve this : https://cw.sdn.sap.com/cw/ideas/2596
I dont seem to understand... as to what exactly needs to be done for resolving this error.
The workflow to be done to fix this... would be helpful.
Thanks
indu
=========================================================
ERROR ON BODS :
3848 7508 FIL-080104 7/20/2011 6:42:52 PM |Dataflow Test_WF|Reader New_R3DataFlow1
3848 7508 FIL-080104 7/20/2011 6:42:52 PM A column delimiter was seen after column number <15> for row number <1> in file <D:/bodi/ZR3TEST.DAT>. The total number of
3848 7508 FIL-080104 7/20/2011 6:42:52 PM columns defined is <15>, so a row delimiter should be seen after column number <15>. Please check the file for bad data, or
3848 7508 FIL-080104 7/20/2011 6:42:52 PM redefine the input schema for the file by editing the file format in the UI.
Hi.
Request help to resolve this problem of delimiters :
We have this problem on BODS jobs when we use execute-preloaded option while using SAP R/3 data source.
This problem we see on a new table of sap R/3 which we are trying to use in our work flow.
The existing jobs on sap R/3 tables do not have any problems.
This is the error seen on error log :
(12.1) 08-02-11 19:31:02 (E) (3968:4204) FIL-080105: |Dataflow DF_Zunbill_rev|Reader ZUNBILLREVENUE
A row delimiter was seen for row number <1> while processing column number <8> in file
<//172.10.16.69/bods_share/zunbill_rev.dat>. The row delimiter should be seen after <9> columns. Please check the file for bad
data, or redefine the input schema for the file by editing the file format in the UI.
(12.1) 08-02-11 19:31:03 (E) (3968:4204) FIL-080105: |Dataflow DF_Zunbill_rev|Reader ZUNBILLREVENUE
A row delimiter was seen for row number <2> while processing column number <8> in file
<//172.10.16.69/bods_share/zunbill_rev.dat>. The row delimiter should be seen after <9> columns. Please check the file for bad
data, or redefine the input schema for the file by editing the file format in the UI.
(12.1) 08-02-11 19:31:03 (E) (3968:4204) FIL-080105: |Dataflow DF_Zunbill_rev|Reader ZUNBILLREVENUE
A row delimiter was seen for row number <3> while processing column number <8> in file
<//172.10.16.69/bods_share/zunbill_rev.dat>. The row delimiter should be seen after <9> columns. Please check the file for bad
data, or redefine the input schema for the file by editing the file format in the UI.
=======================================================================
Can anyone advise as to how we resolve this.
In this post : https://cw.sdn.sap.com/cw/ideas/2596 there is a suggestion.
Since am relatively new to BODS / BW, am not understanding what is being said,
as to use the replace sub string function.
How do we include this function in the ABAP program ?
iF Anyone can help on this, that would be great.
Many thanks.
indu
Edited by: Indumathy Narayanan on Aug 3, 2011 8:10 AM
Similar Messages
-
Reading a semi column delimited multi line Flat file on KM repository
Hi,
I have a requirement in our project to read a multi line, semi column delimited flat from kept on the Knowledge Management repository and display the contents in the Portal.
I had tried couple of options and was unable to read the file. I am not sure which are the correct APIs I should be using.
Can any one of the experts could guide me with the sample code, that will be great!
Your early response is highly appreciated.
Regards
Venkathere you go.
//******* Read file from KM
String repository_km;
String FileURL;
repository_km="/documents/data/data.txt";
try
//Getting the user......
IWDClientUser wdClientUser = WDClientUser.getCurrentUser();
IUser sapUser = wdClientUser.getSAPUser();
com.sapportals.portal.security.usermanagement.IUser ep5User =
WPUMFactory.getUserFactory().getEP5User(sapUser);
//Getting the Resource.........
IResourceContext resourseContext = new ResourceContext(ep5User);
IResourceFactory resourseFactory = ResourceFactory.getInstance();
//path to the KM Folder ("/documents/data/data.txt")
RID rid= RID.getRID(repository_km);
com.sapportals.wcm.repository.IResource resource =
resourseFactory.getResource(rid, resourseContext);
if (resource != null)
String text = "";
BufferedReader in = new BufferedReader(new InputStreamReader(resource.getContent().getInputStream()));
int count=0;
while ((text = in.readLine()) != null)
strText[count] =text;
count++;
catch (RuntimeException e2) {
wdComponentAPI.getMessageManager().reportException("Error in reading file from KM : "+e2.getMessage(),true);
// TODO Auto-generated catch block -
Hi all.
I'm setting up an ETL interface for a Progress target database.
I noted that Progress database requires that both columns and objects be enclosed by double quotes in query statements (e.g: SELECT "name" FROM "myTable")
In ODI Topology Manager->Progress Properties->Language, I filled in the Object Delimiter field with the " value.
The problem is that I don't know where can I set up the value for column delimiter, and for this reason I'm getting SQL syntax error when ODI executes the step of loading data.
Any alternatives?
Thanks
DenisThanks MM.
I didn't work.
The help says the following about Object Delimiter:
The character used to delimit object names. Replaces the standard delimiter given in the language.
Caution: If the two delimiters (before and after the object name) are different, then you should use both of them. If not, one delimiter is enough.
Use a single double-quote " to generate code like this:
create table MySchema."My_Table" ( ...
Use two square brackets [] to generate code like this:
create table MySchema.[My_Table] ( ...
It seems that using two double quotes does not have any effect.
Any alternative?
Thanks -
I am getting this error since purchasing my latest book:
“This page contains the following errors: error on line 1 at column 1: error on line 1 at column 1: Encoding error
Below is a rendering of the page up to the first error”
This message also appears on some, but not all books I purchased earlier.
I've tried to restart my iPhone (5) and downloaded iBooks (and the books itself) again several times but nothing has changed. I’m also synced the iPhone via iTunes without luck.
It’s the latest version of iBooks from Appstore. The same books on iBooks for iPad and Mac working fine!
iOS 7.0.6
iBooks 3.2 (2083)Did you Reset your iphone?
-
SAP HANA XSODATA service (Service exception: column store error.)
Hi all,
i have a problem with my calculation view using xsodata service on it. (There's an input parameter called P
_SWERK)
In my calculation view, the data origin are two analytic views (on which the input parameter P_SWERK should be filter data at beginning of the sql script code).
First i read the analytic views with function CE_OLAP_VIEW and after i do a CE_PROJECTION function on them using the input parameter P_SWERK like a filter on field SWERK.
But when i run my application on browser the following error occurs :
<message xml:lang="en-US">Service exception: column store error.</message>
The link is this :
http://host:port/Project_DM/services/Test/TEST_ZIIG_PDM_CALC_VIEW_FINAL_service.xsodata/PianiDiManutenzioneParameters(P_SWERK='CO05')/Results
The service definition is :
service {
"EricssonItalgas/TEST_ZIIG_PDM_VIEW_FINAL.calculationview" as "PianiDiManutenzione" keys generate local "ID"
parameters via entity;
The SAP HANA AWS revision is 60.
Someone could you help me,please?
Thanks in advance.
Dario.Hi Dario,
Does the calculation view work without xsodata service? From the URL, your XS project name should be Project_DM, but from the xsodata source, the project name is EricssonItalgas. I'm confused with this. Did you use rewrite_rules or?
Best regards,
Wenjun -
Hi All,
I get the below error when i load my xsjs file in browser,
Error while executing query: [dberror(PreparedStatement.executeQuery): 2048 - column store error: column store error: [2950] user is not authorized : at ptime/session/dist/RemoteQueryExecution.cc:1354]
I am able to execute the same query in HANA SQL editor
Please note that ,No Analytical privileges are applied to the view.
Could you please help solving this issue.
Regards,
Logesh Kumar.Hay,
are you using the same Database user for both SQL Editor and XSJS ?
try the following.
Before executing the query , display it and copy the same from browser and execute in SQL editor.
Put the statement in a try catch block and analyse the exception .
Sreehari -
Error while activation the Datastore Object
Hi folks,
I am in SAP BASIS, so not aware of BI very much...can u help me in this,
One user is getting error while activation the Datastore Object
below is error log,
(Green) Activation of Objects with Type DataStore Object
(Green) Checking Objects with Type DataStore Object
(Green) Checking DataStore Object DSO_TEST
(Green) DataStore object DSO_TEST is consistent
Table/view /BIC/VDSO_TEST2 (type VIEW) from DataStore object DSO_TEST saved
Change log for DataStore object "DSO_TEST" saved successfully
Writing of object catalog entries (TADIR)
(RED) The creation of the export DataSource failed
(RED) Error during the retrieval of the logon data stored in secure storage
(RED) Error when creating the export DataSource and dependent Objects
(RED) Error when activating DataStore Object DSO_TEST
Thx. in advance
YashHi Yash,
Check out the below thread:
[activation of the Datastore Object.|error in ODS activation/export datasource;
Hope it helps you!
Please reward points if helpful
Manish -
Invalid column Index error - While consuming Calculation view via Native SQL
Hi Experts,
I am trying to consume a Calculation view (sql script one) , which has input parameters, via Native SQL in a ABAP program .
Code snippet for the same would be as follows , Upon execution, it throws an error "Invalid Column Index (8) error " . Can anyone help what could be the issue here ?
Thanks in Advance,
Suma
REPORT ZTEST_HANA2.
*Report to consume Calculation view (script based) from ABAP
PARAMETERS: ip_docnr type BELNR_D,
ip_gjahr type GJAHR,
ip_bukrs type BUKRS,
ip_blgr type FAGL_RLDNR.
DATA: LO_SQL_STMT TYPE REF TO CL_SQL_STATEMENT,
LO_CONN TYPE REF TO CL_SQL_CONNECTION,
LO_RESULT TYPE REF TO CL_SQL_RESULT_SET,
LV_SQL TYPE STRING,
LR_DATA TYPE REF TO DATA.
DATA: LX_SQL_EXC TYPE REF TO CX_SQL_EXCEPTION,
LT_SEPMAPPS_CLSDINV TYPE TABLE OF SEPMAPPS_CLSDINV,
LV_TEXT TYPE STRING.
TRY.
lv_sql = |SELECT * FROM "_SYS_BIC"."DEMO-ABAP/CA_GET_FI_DATA" | &&
|WITH PARAMETERS ('placeholder'= ('$$p_DOCNR$$','{ ip_docnr }'),| &&
|'placeholder'=('$$p_GJAHR$$','{ ip_gjahr }')| &&
|,'placeholder'= ('$$S_BUKRS$$','{ ip_bukrs }')| &&
|,'placeholder'= ('$$p_base_ledger$$','{ ip_blgr }') )| .
LO_CONN = CL_SQL_CONNECTION=>GET_CONNECTION( ).
"Create an SQL statement to be executed via the connection
LO_SQL_STMT = LO_CONN->CREATE_STATEMENT( ).
"Execute the native SQL query
LO_RESULT = LO_SQL_STMT->EXECUTE_QUERY( LV_SQL ).
"Read the result into the internal table lt_sepmapps_clsdinv
GET REFERENCE OF LT_SEPMAPPS_CLSDINV INTO LR_DATA.
LO_RESULT->SET_PARAM_TABLE( LR_DATA ).
LO_RESULT->NEXT_PACKAGE( ).
LO_RESULT->CLOSE( ).
LO_CONN->CLOSE( ).
CATCH CX_SQL_EXCEPTION INTO LX_SQL_EXC.
LV_TEXT = LX_SQL_EXC->GET_TEXT( ).
MESSAGE LV_TEXT TYPE 'E'.
ENDTRY.Hi Suma,
Post the SQL you success run directly on Studio together with error message (even if is the Invalid column index error).
Check there if the parameters case is working properly... Is it really this confusing options:
p_GJAHR
S_BUKRS
p_base_ledger
Why not all lower or all upper? Anyhow you must test and find which option works according your modeling
Regards, Fernando Da Rós -
Hi all,
I am trying to create a new report using
1. Crystal Report XI
2. Oracle 9i
3. A stored Procedure
4. JDBC connection.
But i could not do it.
Invalid Column index error is coming.
Can anyone help.
Thanks
Saravanakumar.I know this is an old thread but I too am getting a column index error accessing an Oracle 10g database stored procedure using Crystal Reports XI, using the New Report wizard to select the stored procedure. It prompts me for the sp parameters; I select "set to null" and click OK and get
Failed to retrieve data from the database. Details: SQL Exception: [SQL State:] null [Error message:] Invalid Column Index [Database vendor code 17003]
I can run the procedure and get data just fine with no errors using PL/SQL. -
Column alias error in a query of views
Hi
I was trying to workout this query
create view dept_sal as
select d.department_name,sum(e.salary)
from departments d left outer join employees e
on d.department_id= e.department_id
group by d.department_name;
and i recieved this error message .............
Error at Command Line:2 Column:25
Error report:
SQL Error: ORA-00998: must name this expression with a column alias
00998. 00000 - "must name this expression with a column alias"
*Cause:
*Action:
I tried to put an alias for sum(e.salary) function and it worked but i dont understand why it is required or is the problem somewhere else and why an alias is needed here ???
Actually the book hasnt specfied the need for an alias at this place ...so i wanted to know why am getting this error ..
create or replace view dept_sal as
select d.department_name,sum(e.salary) as d_sal
from departments d left outer join employees e
on d.department_id= e.department_id
group by d.department_name;
view DEPT_SAL created.
Also i wanted to know if i can start a thread each time i want have a problem or can i add my questions to somebody
else's thread ..
Thanks
JayshreeHi, Jayshree,
to_learn wrote:
Hi
I was trying to workout this query
create view dept_sal as
select d.department_name,sum(e.salary)
from departments d left outer join employees e
on d.department_id= e.department_id
group by d.department_name;
and i recieved this error message .............
Error at Command Line:2 Column:25
Error report:
SQL Error: ORA-00998: must name this expression with a column alias
00998. 00000 - "must name this expression with a column alias"
*Cause:
*Action:
I tried to put an alias for sum(e.salary) function and it worked but i dont understand why it is required or is the problem somewhere else and why an alias is needed here ???Every column in a table or view must have a unique name. If you don't explicitly specify a name for the output column, Oracle will try to generate one based on the input expression. If the name does not follow the normal rules for identifiers (one of which is that the name can't contain special symbols, like parentheses) then the name must be enclosed in double-quotes.
Notice that these rules are a little different from the rules about result sets. In the result set of a main query, for example, column names do not have to be unique, and a system-generated name like 'SUM(E.SALARY)" is acceptable.
Actually the book hasnt specfied the need for an alias at this place ...so i wanted to know why am getting this error ..I can't see which book you're reading. Post a quote. If the book is available on line, post a link, too.
create or replace view dept_sal as
select d.department_name,sum(e.salary) as d_sal
from departments d left outer join employees e
on d.department_id= e.department_id
group by d.department_name;
view DEPT_SAL created.That's the right way to do it.
Also i wanted to know if i can start a thread each time i want have a problem or can i add my questions to somebody
else's thread ..It's better to start your own thread. -
Hi All,
The Actual query to perform is below.
SELECT name,number from emp WHERE CASE WHEN :1='T' AND term_date IS Not NULL THEN 1 WHEN :1='A' AND term_date IS NULL THEN 1 WHEN :1='ALL' THEN 1 ELSE 1 END = 1;
I have tried in DB adapter like below as a parameter for :1 as #vInputParam
SELECT name,number from emp WHERE CASE WHEN #vInputParam='T' AND term_date IS Not NULL THEN 1 WHEN #vInputParam='A' AND term_date IS NULL THEN 1 WHEN #vInputParam='ALL' THEN 1 ELSE 1 END = 1;
Getting Error code :17003 .java.sql.SQLException: Invalid column index error.
Please suggest me on using ':' bind character in DB adapter Select Query SOA11g.
Can someone help me on this please?
Thanks,
HariHi,
Could you please make sure your binding style(Oracle Positional,Oracle named..etc) of the Seeded VO and Custom Vo are same.
This is the option you will get when you are extending your vo. So make sure that both are same.
You can refer the below link too
VO extension leads to "Invalid column index" exception
Thanks
Bharat -
Hi Experts,
We got a problem here.
We have a query ran without any problems in RSRT. But when I try to put it as data sources(infoprovider) in APD.
I got following error:
column store error: fail to create scenario: [340 2048
We are in BW731006 & ABAP731006.
Any advise?
Thanks in advance!
TengranHi,
Can you check this part in error mentioned by clicking as highlighted in red box. It will give you a correct idea about the issue ::
Also share the detailed error with us as well.
Best Regards,
Arpit -
Oracle Invalid Column Name Error in JSP
I was wondering if anyone could provide some help. I am new to JSP, Beans and Oracle and I am getting a java.sql.SQLException: ORA-00904: invalid column name error when I run the JSP below. The Java Bean's code it is referencing is also included and this bean is just storing information from the server from a previous login page.
Eventually I need to display more columns from the database using this JSP, but since I can even get this one working, I am at a loss!
PLEASE HELP!!!!
I have even tried to replace the beans reference in the sql with just a login and password I know exists in the database! Same error... Help!
I am running Tomcat and Oracle 9i!
<!--
Assign-->
<html>
<head>
<title>Student Signon on page</title>
</head>
<body bgcolor="#FDF5E6">
<h1 align="center">>Student Signon on page</h1>
<%@ page import="java.sql.*" %>
<%@ page import="BeanAs2.Bean5b" %>
<%
String driverClassString = "oracle.jdbc.driver.OracleDriver";
String driverConnectString;
driverConnectString = "jdbc:oracle:thin:@midas2:1521:globaldb";
String user = "system";
String passwd = "manager";
%>
<jsp:useBean id="Bean5b" class="BeanAs2.Bean5b" />
<jsp getProperty id = "Bean5b" property = "login" />
<jsp getProperty id = "Bean5b" property = "pswd" />
<%
Connection connection = null;
try {
Class.forName(driverClassString);
connection = DriverManager.getConnection(driverConnectString, user, passwd);
catch (Exception e) {
out.println("Cannot close connect to database!"+e);
if (connection != null) {
String login =Bean5b.getpassword();
String pswd =Bean5b.getStudentlogin();
String sql = "SELECT studentinfo.familyname FROM STUDENTINFO WHERE studentinfo.username='login' AND studentinfo.password='pswd';";
try { // execute the query
//SELECT studentinfo.familyname FROM STUDENTINFO WHERE studentinfo.username='s40079703' AND studentinfo.password='p4007swd'
Statement stmt = connection.createStatement();
ResultSet rst;
rst = stmt.executeQuery(sql);
// Fetch the query result, and dispaly them in a table
while (rst.next()) {
%>
<tr>
<td> <%= rst.getString("system.teaching.code") %> </td>
</tr>
<%
stmt.close();
connection.close();
} catch(Exception e) {
out.println("Cannot fetch data from database!"+e);
%>
</body></html>
package BeanAs2;
import java.util.*;
public class Bean5b {
// all variables must not be public in a bean
private String Studentlogin;
private String password;
public String getStudentlogin() {
return this.Studentlogin;
public String getpassword() {
return this.password;
public void setStudentlogin(String login) {
this.Studentlogin = login;
public void setpassword(String pswd) {
this.password = pswd;Hi
Thanks for your reply, I should of looked at my code before I copied over. The field should of been "studentinfo.familyname" which I was calling, I have just been changing so much code in this to try and see what the problem is, I didnt fix this before I copied this over.... trust me, I have tried everything........ Hence when I correctly called the "concatination the login name and password to the query properly" as you pointed out, I got rid of the error, BUT now it returning NO DATA????? (the table is populated - I have checked this!!!!)
The table I am trying to get information from sits under a schema called system. It has the following columns;
STUDENTID NUMBER 8
FAMILYNAME VARHCAR 60
GIVENNAME VARCHAR 60
USERNAME VARCHAR 9
PASSWORD VHARCHAR 60
The database is called globaldb. My computer is called Midas2
Whats more, the query works in Oracle sql*plus!!! Returning the relevent data!!!
Actually here is the code for the JSP, with all the changes and none of the mistakes of my previous post...........,
Pleaes help!!!
<html>
<head>
<title>Student Signon on page</title>
</head>
<body bgcolor="#FDF5E6">
<h1 align="center">>Student Signon on page</h1>
<%@ page import="java.sql.*" %>
<%@ page import="BeanAs2.Bean5b" %>
<%
String driverClassString = "oracle.jdbc.driver.OracleDriver";
String driverConnectString;
driverConnectString = "jdbc:oracle:thin:@midas2:1521:globaldb";
String user = "system";
String passwd = "manager";
%>
<jsp:useBean id="Bean5b" class="BeanAs2.Bean5b" />
<jsp getProperty id = "Bean5b" property = "login" />
<jsp getProperty id = "Bean5b" property = "pswd" />
<%
Connection connection = null;
try {
Class.forName(driverClassString);
connection = DriverManager.getConnection(driverConnectString, user, passwd);
catch (Exception e) {
out.println("Cannot close connect to database!"+e);
if (connection != null) {
String login =Bean5b.getpassword();
String pswd =Bean5b.getStudentlogin();
String sqlQuery;
sqlQuery = ("SELECT studentinfo.familyname FROM STUDENTINFO WHERE studentinfo.username='" + login + "' AND studentinfo.password='" + pswd + "'"); %>
<% try { // execute the query
Statement stmt = connection.createStatement();
ResultSet rst;
rst = stmt.executeQuery(sqlQuery);
// Fetch the query result, and dispaly them in a table
while (rst.next()) {
%>
<tr>
<td> <%= rst.getString("studentinfo.familyname") %> </td>
</tr>
<%
stmt.close();
connection.close();
} catch(Exception e) {
out.println("Cannot fetch data from database!"+e);
%>
</body></html> -
Invalid column index error in sql developer
Hi,
I was trying to create stored procedures, functions and packages in sql developer which is connected to Oracle 11g. My instructor is able to execute all of them without any errors in 10g. However, when I try to execute them, I get- "Invalid column index error". Any suggestions on how to rectify this error?Hi,
That is probably an
ORA-17003: Invalid column index
Which is a JDBC error. Is Java/JDBC somehow involved?
If not, could you please post one of the failing statements?
Regards
Peter -
Sybase JDBC driver & Invalid column name error
I submitted a note a year ago concerning JDBC-ODBC bridge and SQL Server db. Same Invalid column name error. The resolution was a bug in the XSU code.
This time the error is with a jconnect5 JDBC driver from Sybase to a Sybase ASA db. ASA is Adaptive Server Anywhere.
<ERROR xsql-timing="140">oracle.xml.sql.OracleXMLSQLException: S0022: Invalid column name 'name'.</ERROR>
However if I use a Sybase JDBC driver from INet Software of Germany, I get the desired result of my query.
Below are sample XSQLConfig.xml definitions.
INet Software Sybase JDBC driver definition:
- <connection name="deasa">
<username>dba</username>
<password>sql</password>
<dburl>jdbc:inetsyb:LEMKAU:2638?database=asademo</dburl>
<driver>com.inet.syb.SybDriver</driver>
<autocommit>true</autocommit>
</connection>
Sybase jconnect5 Sybase JDBC driver definition:
- <connection name="asa">
<username>dba</username>
<password>sql</password>
<dburl>jdbc:sybase:Tds:lemkau:2638?ServiceName=asademo</dburl>
<driver>com.sybase.jdbc.SybDriver</driver>
<autocommit>true</autocommit>
</connection>
I believe the bug has to do with the numeric codes that the drivers use to determine data types are not properly interpreted.
See XML General note title "insert-request, xsu 2.1.0 beta & SQL Server" for reference.
Steve.Thanks for the notification. We will look into this issue...
Maybe you are looking for
-
I can't seem to get my Itunes Library to come up on my Mac. When I bought a new PC last year I just downloaded Itunes and all of my previous library came in but that isn't happening with my Mac Pro. Is there an easy way to do that?
-
Save as PDF in Excel rewrites file when saving multiple sheets
Hello, I'm having issues saving Excel files to PDF when multiple sheets of a workbook are active. I constantly need to print multiple sheets of a workbook for a service report, but when multiple tabs are highlighted to print/save it will save each sh
-
Is there a way to change the actual song file but keep the 'info'?
I have a compilation that took me a really long time to edit (by which I mean put the date for each individual song in because they were all released different years becaues it's a Bob Dylan compilation and I have smart playlists for each decade from
-
OBIEE 11.1.1.6.4 NQS error 17001
Hi Gurus, I am getting below error when trying to pull data from Noetix views (which are in OBIEE rpd) ========================== Error Details: Error codes: OPR4ONWY:U9IM8TAC:O12DL65P State: HY000, Code: 10058. [NQODBC][SQL_STATE: HY000][nQSError: 1
-
Multiple photos in greeting card
I would like to create a greeting card with a photo on the front and a photo inside. iPhoto 6 card themes do not allow this. How about iPhoto 7.1?