壹佰网|ERP100 - 企业信息化知识门户

 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 5182|回复: 4

Quote PDF文件输出请教!!!!

[复制链接]
发表于 2006/12/20 23:54:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。如果您注册时有任何问题请联系客服QQ: 83569622  。

您需要 登录 才可以下载或查看,没有帐号?注册

x
我们公司想利用Quote的print功能输出PDF文件,不知道大家有没有作过的。
我的问题如下:
1)如何修改输出的格式????,我们希望输出的格式就直接是我们的范本合同(可以直接打印后和客户签订的合同)
2)为什么生成的PDF文件有乱码???

请各位高手支招!!!!!
报价打印.jpg
乱码.jpg

QuotePrint.doc

268 KB, 下载次数: 2, 下载积分: 努力值 -5 点

 楼主| 发表于 2006/12/21 07:45:52 | 显示全部楼层
这是Oracle 的回复:
Hi Hu -

If you set the profile option "ASO: Print Method" to use Oracle Reports Server for Print Quote functionality then you can print quo
tes in either Adobe PDF or Microsoft RTF, while setting this profile option to X
ML Publisher allows you to print quotes only in Adobe PDF format.

Note 189708.1 (Oracle Reports 6i Setup Guide for Apps 11i), for 11i, PDF output is supporte
d for English and Latin-1 character sets only.
It's not possible to upgrade the instance to use Reports Server 9i as this is not certified with Apps 11i.

Thank you,

Phil

@CUS

配置文件ASO: Print Method应该是:ASO: Print Quote Method

本问题解决继续,请大家关注!!!!
配置文件.jpg
 楼主| 发表于 2006/12/21 14:13:06 | 显示全部楼层
在metalink上找到了一个资料
主题: How to Modify the data source for the XML version of the Print Quote report
文档 ID: 注释:392728.1类型: HOWTO
上次修订日期: 01-NOV-2006状态: PUBLISHED
In this Document


Applies to: Oracle Quoting - Version: 11.5.10
Information in this document applies to any platform.
ASOPRINT.xsl
GoalHow to Modify the data source for the XML version of the Print Quote report for customization purposes?
SolutionNote:  We do not provide XML sample data as it is not needed to customize the report.

The following are general details for customizing the xml print quote report to add a column.
The example is for adding the column named "EqxMRRDiscPr".
You can use the above framework as example to do your customizations.
The XML Print Quote uses the framework methodology.  You will need understanding of the 11i framework customization using JDeveloper to be able to perform these customizations.

Please also note that current Print Quote functionality ONLY uses XSL stylesheets for the layout design. So you need experience with modifying XSL stylesheets. In Release 12, ASO will be providing RTF based stylesheets for simply creating and modifying the layout.

=====================================================
Note: To add a column to the print quote report, following files need to be updated:

LinesVO.xml --- xml files containing the sql query and attribute definition

LinesVORowImpl.class - public class extending the framework class OAViewRowImpl.
This class contains the set and get for the attributes defined in xml file.

ASOPRINT.xsl - this is the xsl stylesheet file used to describe the report layout.
This file needs to be modified to include the new column being added to the report.

STEPS
======


1. Modify VOLines.xml file

a). Modify the query in LinesVO.xml to include the additional columns you want to display in the report. For example,

SELECT
qte.ui_line_number line_number
,qte.padded_concatenated_segments item_number
,qte.item_description item_description
,qte.uom_code Order_Quantity_Uom
,DECODE(qte.line_category_code, 'RETURN', qte.quantity*(-1), qte.quantity) Ordered_Quantity
,qte.line_category_code
,qte.service_ref_line_id
,UPPER(qte.service_ref_type_code) srv_ref_type_code
,DECODE(qte.line_category_code, 'RETURN', qte.line_list_price*(-1), qte.line_list_price)
unit_list_price
,DECODE(qte.line_category_code, 'RETURN', qte.line_adjusted_amount*(-1), qte.line_adjusted_amount)
line_adj_price
,DECODE(qte.line_category_code, 'RETURN', qte.line_quote_price*(-1), qte.line_quote_price)
unit_selling_price
,DECODE(qte.line_category_code, 'RETURN', qte.extended_list_price*(-1), qte.extended_list_price)
line_total_list_price
,DECODE(qte.line_category_code, 'RETURN', qte.extended_adjusted_amount*(-1),
qte.extended_adjusted_amount)
line_total_adj_amt
,DECODE(qte.line_category_code, 'RETURN', qte.extended_selling_price*(-1),
qte.extended_selling_price) line_total
,line_number old_line_number
,to_char(qte.start_date_active,nvl(FND_PROFILE.VALUE('ICX_DATE_FORMAT_MASK'), 'DD-MON-RRRR'))
start_date_active
,to_char(qte.end_date_active,nvl(FND_PROFILE.VALUE('ICX_DATE_FORMAT_MASK'), 'DD-MON-RRRR'))
end_date_active
,qte.service_duration
,qte.service_period
,qte.item_type_code
,decode(qte.item_type_code, 'MDL', NVL(qte.complete_configuration_flag, 'N'), 'Z') Model_Status
,qte.quote_line_id qlid
,qte.quote_header_id
,DECODE(qte.line_category_code,
'RETURN',
(select qte.quantity *
(nvl(sum(decode(apav.applied_flag,'Y',decode(apav.charge_type_code,NULL,0,apav.adjusted_amount),0)
), 0))
FROM aso_price_adjustments_v apav
where qte.quote_line_id = apav.quote_line_id )*(-1),
(select qte.quantity *
(nvl(sum(decode(apav.applied_flag,'Y',decode(apav.charge_type_code,NULL,0,apav.adjusted_amount),0)
), 0))
FROM aso_price_adjustments_v apav
where qte.quote_line_id = apav.quote_line_id )) line_charges
,DECODE(qte.line_category_code,
'RETURN',
(decode(qte.item_type_code,
'MDL',
decode (qte.config_header_id,
NULL,
qte.extended_selling_price,
(select sum(QUOTE_LINES.LINE_QUOTE_PRICE * QUOTE_LINES.QUANTITY)
from ASO_QUOTE_LINES_ALL QUOTE_LINES,
ASO_QUOTE_LINE_DETAILS QUOTE_LINE_DETAILS
where quote_line_details.config_header_id=qte.config_header_id
and quote_line_details.quote_line_id =quote_lines.quote_line_id)),
qte.extended_selling_price))*(-1),
(decode(qte.item_type_code,
'MDL',
decode (qte.config_header_id,
NULL,
qte.extended_selling_price,
(select sum(QUOTE_LINES.LINE_QUOTE_PRICE * QUOTE_LINES.QUANTITY)
from ASO_QUOTE_LINES_ALL QUOTE_LINES,
ASO_QUOTE_LINE_DETAILS QUOTE_LINE_DETAILS
where quote_line_details.config_header_id=qte.config_header_id
and quote_line_details.quote_line_id =quote_lines.quote_line_id)),
qte.extended_selling_price))) model_total
,DECODE(qte.line_category_code, 'RETURN', qte.line_list_price*(-1), qte.line_list_price)
eqx_mrr_disc_pr ***** THIS IS THE COLUMN YOU ARE ADDING TO THE QUERY ************

FROM
aso_pvt_quote_lines_bali_v qte

b). Add the View Attributes for the additional columns you want to add. For example:

<ViewAttribute
Name="EqxMrrDiscPr"
IsPersistent="false"
Precision="255"
Type="java.lang.String"
AliasName="EqxMrrDiscPr"
ColumnType="VARCHAR2"
Expression="EqxMrrDiscPr"
SQLType="VARCHAR" >
</ViewAttribute>


2. Modify LinesVORowImpl.java file to add setters and getters for the newly added view attribute. For example,

a. protected static final int EQXMRRDISCPR = 25;

b. case EQXMRRDISCPR:
return getEqxMrrDiscPr();


case EQXMRRDISCPR:
setEqxMrrDiscPr((String)value);
return;


c. /**
*
* Gets the attribute value for the calculated attribute EqxMrrDiscPr
*/
public String getEqxMrrDiscPr()
{
return (String)getAttributeInternal(EQXMRRDISCPR);
}


/**
*
* Sets <code>value</code> as the attribute value for the calculated attribute EqxMrrDiscPr
*/
public void setEqxMrrDiscPr(String value)
{
setAttributeInternal(EQXMRRDISCPR, value);
}


3. Modify the ASOPRINT.XSL (stylesheet) file. PLEASE DO NOT MODIFY THE ORIGINAL FILE.
Make copy of the file as ASOPRINTEQ.XSL and modify.

a. <xsl:variable name="EqxMRRDiscPr">
<xsl:text>EqxMRRDiscPr</xsl:text>
</xsl:variable>

b. <fo:table-cell xsl:use-attribute-sets="number.header">
<fo:block text-align="left"><xsl:value-of select="$EqxMRRDiscPr"/></fo:block>
</fo:table-cell>

c. <fo:table-cell xsl:use-attribute-sets="table.cell">
<fo:block><xsl:value-of select="./EqxMrrDiscPr"/></fo:block>
</fo:table-cell>


4. Compile LinesVORowImpl.java file and move the class to server side under
$JAVA_TOP/oracle/apps/aso/print/server


5. Also move LinesVO.xml file to
$JAVA_TOP/oracle/apps/aso/print/server


6. Create a new template using the steps below:

Log into application usisng XML Publisher Administrator
Click on Templates
Click Create Template and enter the following values:

Name: Quote Print EQ
Code: ASOPRINTEQ
Application: Order Capture
Data Definition: Quote Printing
Type: XSL-FO
Language: English
Territory: United States of America
File: Upload the modified XSL file ASOPRINTEQ.XSL
Save to create this new template


7. If you want this template used all the time,
set the profile ASO: Default Layout Template to this newly created template.
In any case, user will have option to choose this template at run time from the template LOV.

8. Bounce Apache and test the print quote. You should see an additional column.

资料1.rar

30.25 KB, 下载次数: 2, 下载积分: 努力值 -5 点

 楼主| 发表于 2006/12/21 16:05:43 | 显示全部楼层
Unable to Print Quote when logged in with Language set to French
Applies to: Oracle Quoting - Version: 11.5.10R2
This problem can occur on any platform.

SymptomsQuoting 11.5.10.2
When using XML Publisher method to print quote, cannot print a quote when logged into Quoting with language set to French.No pdf file is produced.  The same functionality works fine when logged in with language set to English.

Steps
The issue can be reproduced at will with the following steps:
1. Log on Oracle Quoting in French
2. Select an existing quote
3. Select Action > Print Quote
4. Click Generate
--> No output file is generated. A blank page is displayed.
CauseThe ASOPRINT.xsl template was loaded into XML Publisher for English language only.

Solution
1. Login to the XML Publisher responsibility.
2. Navigate to "Templates".
3. Query template for application "Order Capture".  The 'Quote Printing' template will be displayed.
4. Download this English template.
5. Upload the template again for language French and territory France (without any changes).
发表于 2006/12/21 16:48:10 | 显示全部楼层
我要是有一个 metalink的帐户就好了
您需要登录后才可以回帖 登录 | 注册

本版积分规则

QQ|Archiver|小黑屋|手机版|壹佰网 ERP100 ( 京ICP备19053597号-2 )

Copyright © 2005-2012 北京海之大网络技术有限责任公司 服务器托管由互联互通
手机:13911575376
网站技术点击发送消息给对方83569622   广告&合作 点击发送消息给对方27675401   点击发送消息给对方634043306   咨询及人才点击发送消息给对方138011526

GMT+8, 2025/11/30 15:17 , Processed in 0.014849 second(s), 18 queries , File On.

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表