<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:blogger='http://schemas.google.com/blogger/2008' xmlns:georss='http://www.georss.org/georss' xmlns:gd="http://schemas.google.com/g/2005" xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1061062602867709175</id><updated>2026-06-16T04:11:08.036-07:00</updated><category term="API"/><category term="Oracle"/><category term="Oracle applications"/><category term="AP"/><category term="Oebs"/><category term="262093.1"/><category term="AP_CHECKS_ALL"/><category term="ASL"/><category term="CSV DOS"/><category term="CSV macintosh"/><category term="Concurrent manager"/><category term="Consulting"/><category term="Download"/><category term="Enreg. physique dans fichier de données"/><category term="Expédition"/><category term="FNDLOAD"/><category term="GTS"/><category term="Implantation en Chine"/><category term="Import/Export"/><category term="Input truncated to * characters"/><category term="ORA-00960"/><category term="ORA-06502"/><category term="Offshore en Chine"/><category term="Oracle forms 10g"/><category term="Oracle forms 6i"/><category term="PO"/><category term="PO_ACTIONS.CLOSE_PO"/><category term="Payment"/><category term="Physical record in data file"/><category term="Relance"/><category term="Réception"/><category term="SQL Loader，ORA-01722"/><category term="SQL*Loader-510"/><category term="Start/Stop/Restart"/><category term="Upload"/><category term="VAProxyD.dll"/><category term="Voyage en Chine"/><category term="Workflow"/><category term="adcmctl.sh"/><category term="approved supplier list"/><category term="blanket agreements"/><category term="commande"/><category term="compilation forms"/><category term="f60gen access denied"/><category term="invoice"/><category term="mass close PO"/><category term="nom de colonne ambigu dans liste de sélection"/><category term="quotations"/><category term="runFuncOnBody"/><category term="sql loader"/><category term="status"/><category term="statut"/><category term="validation"/><category term="创业"/><title type='text'>Oracle E-Business Suite号航班</title><subtitle type='html'>Bonjour, ici votre capitaine Chuan CHEN, bienvenue à bord de ce vol OeBS à destination de La Réussite. Il est très exactement sysdate (heure locale), la température au sol est de &amp;amp;V_TEMPERATURE, notre temps de vol est estimé à &amp;amp;V_TEMPS... et le temps sur notre destination La Réussite est agréable avec quelques nuages. Au nom de tout l&amp;#39;équipage, je vous souhaite un agréable voyage.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default?redirect=false'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>20</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>25</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-3222511871576518498</id><published>2011-07-12T06:53:00.000-07:00</published><updated>2011-07-12T07:23:13.385-07:00</updated><title type='text'>Script to control sequence assignment // Script pour vérifier les affectations des séquences dans Oracle applications</title><content type='html'>SELECT distinct fds.name,fds.creation_date, fu.user_name, fdsc.name &quot;Category&quot;,fda.method_code&lt;br /&gt;FROM FND_DOC_SEQUENCE_ASSIGNMENTS FDA&lt;br /&gt;    ,FND_DOCUMENT_SEQUENCES FDS&lt;br /&gt;    , fnd_doc_sequence_categories fdsc&lt;br /&gt;    , FND_USER FU&lt;br /&gt;WHERE&lt;br /&gt;    FDA.DOC_SEQUENCE_ID = FDS.DOC_SEQUENCE_ID&lt;br /&gt;    and fda.category_code = fdsc.code&lt;br /&gt;    AND FDS.created_by= fu.user_id  &lt;br /&gt;    AND FDA.start_date = to_date(&#39;01/&#39;||to_char(sysdate-30, &#39;MM/YY&#39;))  -- début période N-1&lt;br /&gt;    AND FDA.end_date = last_day(trunc(sysdate-30))-- Fin période N-1&lt;br /&gt;    AND  not exists (select 1&lt;br /&gt;    from FND_DOCUMENT_SEQUENCES FDS2,&lt;br /&gt;    FND_DOC_SEQUENCE_ASSIGNMENTS FDA2&lt;br /&gt;    WHERE 1=1&lt;br /&gt;    AND FDA2.DOC_SEQUENCE_ID = FDS2.DOC_SEQUENCE_ID&lt;br /&gt;    AND fda.method_code = fda2.method_code&lt;br /&gt;    AND fda.category_code= fda2.category_code&lt;br /&gt;    AND fda.set_of_books_id = fda2.set_of_books_id&lt;br /&gt;   -- AND length(fds.initial_value) = length(fds2.initial_value)&lt;br /&gt;    AND FDA2.start_date =  to_date(&#39;01/&#39;||to_char(sysdate, &#39;MM/YY&#39;))-- Début Période N&lt;br /&gt;    )&lt;br /&gt;    order by fds.name;</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/3222511871576518498/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2011/07/script-to-control-sequence-assignment.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3222511871576518498'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3222511871576518498'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2011/07/script-to-control-sequence-assignment.html' title='Script to control sequence assignment // Script pour vérifier les affectations des séquences dans Oracle applications'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-2430762327532676592</id><published>2011-05-17T03:09:00.000-07:00</published><updated>2011-05-17T05:21:00.114-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="ORA-06502"/><category scheme="http://www.blogger.com/atom/ns#" term="runFuncOnBody"/><title type='text'>PO workflow error &quot;ORA-06502: PL/SQL: numeric or value error: character string buffer too small&quot; in Wf_Notification.runFuncOnBody(XXXXXX, text/html)</title><content type='html'>The PO encountered error in workflow while generate notifiation PO_REQ_APPROVE :&lt;br /&gt;&lt;br /&gt;[&lt;blockquote&gt;WF_ERROR] ERROR_MESSAGE=3835: Erreur &quot;-20002 - ORA-20002: 2018: Impossible de générer la notification au format XML. Cause : 2020: Erreur d&#39;extraction du contenu de la notification. Cause : ORA-06502: PL/SQL: numeric or value error: character string&lt;br /&gt;&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;The wfstatus output for the PO shows the following error :&lt;br /&gt;&lt;br /&gt;&lt;blockquote&gt;[WF_ERROR] ERROR_MESSAGE=3835: Erreur &quot;-20002 - ORA-20002: 2018: Impossible de générer la notification au format XML. Cause : 2020: Erreur d&#39;extraction du contenu de la notification. Cause : ORA-06502: PL/SQL: numeric or value error: character string buffer too small&lt;br /&gt;&lt;br /&gt;Wf_Notification.runFuncOnBody(409499, text/html)&lt;br /&gt;Wf_Notification.GetBody(409499, text/html)&lt;br /&gt;WF_NOTIFICATION.GetFullBody(nid =&amp;gt; 409499, disptype =&amp;gt; text/html)&lt;br /&gt;WF_MAIL.GetLOBMessage3(nid =&amp;gt; 409499, r_ntf_pref =&amp;gt; MAILHTML)&quot; survenue lors de l&#39;exécution de la fonction de génération &quot;WF_XML.Generate&quot; pour l&#39;événement &quot;oracle.apps.wf.notification.send&quot;. ERROR_STACK=&lt;br /&gt;WF_MAIL.GetLOBMessage3(409499, WFMAIL, 2020: Erreur d&#39;extraction du contenu de la notification. Cause : ORA-06502: PL/SQL: numeric or value error: character string buffer too small&lt;br /&gt;&lt;br /&gt;Wf_Notification.runFuncOnBody(409499, text/html)&lt;br /&gt;Wf_Notification.GetBody(409499, text/html)&lt;br /&gt;WF_NOTIFICATION.GetFullBody(nid =&amp;gt; 409499, disptype =&amp;gt; text/html)&lt;br /&gt;WF_MAIL.GetLOBMessage3(nid =&amp;gt; 409499, r_ntf_pref =&amp;gt; MAILHTML), Step -&amp;gt; Getting text/html body)&lt;br /&gt;WF_XML.GenerateDoc(oracle.apps.wf.notification.send, 409499)&lt;br /&gt;WF_XML.Generate(oracle.apps.wf.notification.send, 409499)&lt;br /&gt;WF_XML.Generate(oracle.apps.wf.notification.send, 409499)&lt;br /&gt;Wf_Event.setMessage(oracle.apps.wf.notification.send, 409499, WF_XML.Generate)&lt;br /&gt;Wf_Event.dispatch_internal()&lt;/blockquote&gt;&lt;br /&gt;&lt;br /&gt;After search in Oracle metalink, we found that a patch has been delivred to fix this issue : ID 579729.1 :&lt;br /&gt;&lt;br /&gt;The issue can be reproced at will with the following steps :&lt;br /&gt;1. Create a PO with more than 20 lines&lt;br /&gt;2. Submit the PO for approval&lt;br /&gt;3. Log in as approver&lt;br /&gt;4. Request for more information from the &quot;Standard Purchase Order 1234 for USD 999,999.99 requires your approval&quot; notification&lt;br /&gt;5. Log in as the buyer&lt;br /&gt;6. Open the &quot;More Information Requested: Standard Purchase Order 1234 for USD 999,999.99 requires your approval&quot; notification.&lt;br /&gt;&lt;br /&gt;Cause&lt;br /&gt;When the line details exceed the available limit of the notification it gives the ORA-06512. This is happening because of the 32K size limit.&lt;br /&gt;&lt;br /&gt;This is explained in the following bug:&lt;br /&gt;Bug 6932794 MORE INFO REQUESTED NOTIFICATIONS ERROR WITH ORA-06502: PL/SQL: NUMERIC OR VALUE&lt;br /&gt;&lt;br /&gt;Solution&lt;br /&gt;&lt;br /&gt;To implement the solution, execute the following steps:&lt;br /&gt;For Release 11.5.10:&lt;br /&gt;&lt;br /&gt;1. Download and review the readme and pre-requisites for Patch 7370646.&lt;br /&gt;&lt;br /&gt;2. Ensure that you have taken a backup of your system before applying&lt;br /&gt;the recommended patch.&lt;br /&gt;&lt;br /&gt;3. Apply the patch in a test environment.&lt;br /&gt;&lt;br /&gt;4. Confirm the following file versions:&lt;br /&gt;POXWPA1B.pls 115.206.11510.62&lt;br /&gt;POXWPA7S.pls 115.6.11510.2&lt;br /&gt;POXWPA7B.pls 115.38.11510.23&lt;br /&gt;&lt;br /&gt;Use the following sql:&lt;br /&gt;select text&lt;br /&gt;from dba_source&lt;br /&gt;where line = 2&lt;br /&gt;and name in (&#39;PO_REQAPPROVAL_INIT1&#39;,&#39;PO_WF_PO_NOTIFICATION&#39;);&lt;br /&gt;&lt;br /&gt;5. Retest the issue.&lt;br /&gt;&lt;br /&gt;6. Migrate the solution as appropriate to other environments.&lt;br /&gt;&lt;br /&gt;For Release 12:&lt;br /&gt;&lt;br /&gt; 1. Download and review the readme and pre-requisites for Patch 7218243 - Procurement R12.0 Update July 2008 or higher&lt;br /&gt;or&lt;br /&gt;One-off Patch 7612490 which indirectly includes the fix for this issue.&lt;br /&gt;&lt;br /&gt;2. Ensure that you have taken a backup of your system before applying the recommended patch.&lt;br /&gt;&lt;br /&gt;3. Apply the patch in a test environment.&lt;br /&gt;&lt;br /&gt;4. Confirm the following file versions:&lt;br /&gt;POXWPA1B.pls-120.46.12000000.13 or higher&lt;br /&gt;POXWPA7S.pls-120.0.12000000.2 or higher&lt;br /&gt;POXWPA7B.pls-120.8.12000000.3 or higher&lt;br /&gt;&lt;br /&gt;You can use the commands like the following:&lt;br /&gt;strings -a $PO_TOP/patch/115/sql/POXWPA1B.pls | grep -i &#39;$Header:&#39;&lt;br /&gt;strings -a $PO_TOP/patch/115/sql/POXWPA7S.pls | grep -i &#39;$Header:&#39;&lt;br /&gt;strings -a $PO_TOP/patch/115/sql/POXWPA7B.pls | grep -i &#39;$Header:&#39;&lt;br /&gt;&lt;br /&gt;5. Retest the issue.&lt;br /&gt;&lt;br /&gt;6. Migrate the solution as appropriate to other environments.</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/2430762327532676592/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2011/05/po-workflow-error-ora-06502-plsql.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/2430762327532676592'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/2430762327532676592'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2011/05/po-workflow-error-ora-06502-plsql.html' title='PO workflow error &quot;ORA-06502: PL/SQL: numeric or value error: character string buffer too small&quot; in Wf_Notification.runFuncOnBody(XXXXXX, text/html)'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-6534833401828154294</id><published>2011-05-06T00:49:00.000-07:00</published><updated>2011-05-06T00:54:14.332-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Consulting"/><category scheme="http://www.blogger.com/atom/ns#" term="Implantation en Chine"/><category scheme="http://www.blogger.com/atom/ns#" term="Import/Export"/><category scheme="http://www.blogger.com/atom/ns#" term="Offshore en Chine"/><category scheme="http://www.blogger.com/atom/ns#" term="Voyage en Chine"/><title type='text'>France Chine Business Consultig</title><content type='html'>Le meilleur site de conseil en France Chine Business Consulting ;-) : &lt;br /&gt;&lt;br /&gt;&lt;a href=&quot;http://chine-consulting.fr&quot;&gt;http://chine-consulting.fr&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;Leur domaines d&#39;activités : &lt;br /&gt;&lt;br /&gt;France Chine Business Consulting, Implantation en Chine, Offshore en Chine, Import-Export, Voyage en Chine, Traduction en chinois</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/6534833401828154294/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2011/05/france-chine-business-consultig.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/6534833401828154294'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/6534833401828154294'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2011/05/france-chine-business-consultig.html' title='France Chine Business Consultig'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-7880331766663833794</id><published>2011-03-31T06:24:00.000-07:00</published><updated>2011-03-31T06:35:01.756-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="CSV DOS"/><category scheme="http://www.blogger.com/atom/ns#" term="CSV macintosh"/><category scheme="http://www.blogger.com/atom/ns#" term="Enreg. physique dans fichier de données"/><category scheme="http://www.blogger.com/atom/ns#" term="Physical record in data file"/><category scheme="http://www.blogger.com/atom/ns#" term="sql loader"/><category scheme="http://www.blogger.com/atom/ns#" term="SQL*Loader-510"/><title type='text'>How to resolve SQL error : SQL*Loader-510</title><content type='html'>The issue happend when we tried to import a csv data file via sql loader. &lt;br /&gt;&lt;br /&gt;The loader finished in error with following message in log file : &lt;br /&gt;&lt;br /&gt;  - US : SQL*Loader-510: Physical record in data file (XXX/XXXXXX/XX.csv) is longer than the maximum&lt;br /&gt;  - F : SQL*Loader-510: Enreg. physique dans fichier de données (XXX/XXXXXX/XX.csv) plus long que max&lt;br /&gt;&lt;br /&gt;The CSV file has been uploaded correctly on the server. And there is none line in CSV file which seems very long.&lt;br /&gt;&lt;br /&gt;In our case here, the problem comes from the CSV file generation format in Excel. In fact, two CSV saving format are proposed by Excel, we choosed the format CSV macintosh. If we choose another one format CSV DOS, the error would not be occured.</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/7880331766663833794/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2011/03/how-to-resolve-sql-error-sqlloader-510.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/7880331766663833794'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/7880331766663833794'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2011/03/how-to-resolve-sql-error-sqlloader-510.html' title='How to resolve SQL error : SQL*Loader-510'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-8721783915516901085</id><published>2011-03-29T02:15:00.000-07:00</published><updated>2011-03-31T16:06:33.681-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="262093.1"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="approved supplier list"/><category scheme="http://www.blogger.com/atom/ns#" term="ASL"/><category scheme="http://www.blogger.com/atom/ns#" term="blanket agreements"/><category scheme="http://www.blogger.com/atom/ns#" term="quotations"/><title type='text'>API to import ASLs (approved supplier list) in Oracle from blanket agreements or quotations // Import des ASLs à partir des commandes ouverts ou prix</title><content type='html'>Since Nov 2008(patch ID 262093.1), Oracle provides the possibility to create local Approved Supplier List (ASL) through the PO Open Interface via the concurrent program &quot;Generate Sourcing Rules and ASLs from Blanket Agreement&quot;. &lt;br /&gt;&lt;br /&gt;With this concurrent program, we can create the ASLs from the blankets already imported into Oracle PO. It&#39;s useful in the case of we use blanket agreements. If we don&#39;t use blanket but only use quotation, it&#39;s impossible for us to mass create ASLs. &lt;br /&gt;&lt;br /&gt;So we duplicated the standard concurrent program &quot;Generate Sourcing Rules and ASLs from Blanket Agreement&quot; and created another new specific concurrent program &quot;XX : Generate Sourcing Rules and ASLs from Quotations&quot;. &lt;br /&gt;&lt;br /&gt;The executable file is always the same : &lt;span style=&quot;font-weight:bold;&quot;&gt;POXSRASL.sql&lt;/span&gt;&lt;br /&gt;This program requires 12 parameters that 5 need to be modified :&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 1 - Supplier&lt;/span&gt; &lt;br /&gt;        LOV 1 - PO_ASL_VENDOR&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 2 - Blanket Agreement Number&lt;/span&gt;&lt;br /&gt;        LOV 2 - SE_PO_ASL_BLANKET_NUMBER&lt;br /&gt;   Define LOV - &lt;br /&gt;             Table  : PO_HEADERS_ALL POH,PO_LOOKUP_CODES PLC&lt;br /&gt;             Valeur : POH.segment1&lt;br /&gt;             ID     : POH.po_header_id&lt;br /&gt;             WHERE  : POH.vendor_id=:$FLEX$.PO_ASL_VENDOR&lt;br /&gt;                      and NVL(POH.closed_code,&#39;OPEN&#39;) not in (&#39;CLOSED&#39;,&#39;FINALLY CLOSED&#39;)&lt;br /&gt;                      and POH.type_lookup_code=&#39;QUOTATION&#39;&lt;br /&gt;                      and&lt;br /&gt;                       (&lt;br /&gt;                         poh.org_id  IN (SELECT ORG_ID FROM PO_SYSTEM_PARAMETERS)&lt;br /&gt;                        OR&lt;br /&gt;                        (&lt;br /&gt;                         POH.global_agreement_flag=&#39;Y&#39; and&lt;br /&gt;                         EXISTS (&lt;br /&gt;                          select pgoa.purchasing_org_id&lt;br /&gt;                          from po_ga_org_assignments pgoa&lt;br /&gt;                          where pgoa.po_header_id=poh.po_header_id and&lt;br /&gt;                          pgoa.purchasing_org_id &lt;br /&gt;                           IN (SELECT ORG_ID FROM PO_SYSTEM_PARAMETERS)&lt;br /&gt;                         )&lt;br /&gt;                      )&lt;br /&gt;                  )&lt;br /&gt;                  AND PLC.LOOKUP_TYPE=&#39;YES/NO&#39;&lt;br /&gt;                  AND PLC.LOOKUP_CODE=NVL(POH.GLOBAL_AGREEMENT_FLAG,&#39;N&#39;)&lt;br /&gt;      ORDER  BY : PLC.DISPLAYED_FIELD &quot;Global Agreement&quot;&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 3 - Global Agreement Flag&lt;/span&gt;&lt;br /&gt;        LOV 3 - PO_ASL_ENABLE_FLAG&lt;br /&gt;  Default val - select decode(nvl(poh.global_agreement_flag,&#39;N&#39;),&#39;N&#39;,null,&#39;Y&#39;) from po_headers_all poh where poh.po_header_id=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 4 - Purchasing Organization&lt;/span&gt;&lt;br /&gt;        LOV 4 - SE_PO_ASL_PURCHASING_ORG&lt;br /&gt;  Default val - SELECT name FROM hr_all_organization_units_tl houtl WHERE houtl.organization_id= decode(nvl(:$FLEX$.PO_ASL_ENABLE_FLAG:NULL,&#39;N&#39;),&#39;Y&#39;,decode ( ( SELECT count(*) FROM po_ga_org_assignments pgoa WHERE pgoa.purchasing_org_id=:$PROFILES$.ORG_ID AND pgoa.po_header_id=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER ) , 1, :$PROFILES$.ORG_ID, null ) ,null) AND language=USERENV(&#39;LANG&#39;)&lt;br /&gt;   Define LOV - Table : PO_HEADERS_ALL POH,PO_GA_ORG_ASSIGNMENTS PGOA, HR_ALL_ORGANIZATION_UNITS HOU,HR_ALL_ORGANIZATION_UNITS HOU1, HR_ALL_ORGANIZATION_UNITS HOU2&lt;br /&gt;                Where : POH.global_agreement_flag=:$FLEX$.PO_ASL_ENABLE_FLAG&lt;br /&gt;  and POH.po_header_id=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER&lt;br /&gt;  and PGOA.po_header_id = POH.po_header_id&lt;br /&gt;  and ((POH.org_id IN (SELECT ORG_ID FROM PO_SYSTEM_PARAMETERS))&lt;br /&gt;  or (PGOA.purchasing_org_id IN (SELECT ORG_ID FROM PO_SYSTEM_PARAMETERS)))&lt;br /&gt;  and HOU.organization_id=PGOA.purchasing_org_id&lt;br /&gt;  and HOU1.organization_id=POH.org_id&lt;br /&gt;  and HOU2.organization_id=PGOA.organization_id&lt;br /&gt;                Order by : hou1.name as &quot;Owning Organization&quot;,&lt;br /&gt;  hou2.name as &quot;Requesting Organization&quot;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 5 - Supplier Site&lt;/span&gt;&lt;br /&gt;        LOV 5 - SE_PO_ASL_VENDOR_SITE&lt;br /&gt;  Default val - SELECT pvs.vendor_site_code FROM po_vendor_sites pvs, po_headers_all poh WHERE pvs.vendor_site_id = decode( nvl(poh.global_agreement_flag,&#39;N&#39;),&#39;N&#39;,poh.vendor_site_id, decode ( ( SELECT count(DISTINCT(pgoa.vendor_site_id)) FROM po_ga_org_assignments pgoa WHERE pgoa.purchasing_org_id=nvl(:$FLEX$.SE_PO_ASL_PURCHASING_ORG:NULL ,null) AND pgoa.po_header_id=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER ) , 1, ( SELECT DISTINCT (pgoa.vendor_site_id) FROM po_ga_org_assignments pgoa WHERE pgoa.po_header_id=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER AND pgoa.purchasing_org_id=nvl(:$FLEX$.SE_PO_ASL_PURCHASING_ORG:NULL ,null) ) , poh.vendor_site_id ) ) AND poh.po_header_id=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER&lt;br /&gt;    Define LOV - Table : PO_VENDOR_SITES_ALL POV,PO_GA_ORG_ASSIGNMENTS PGOA,PO_HEADERS_ALL POH&lt;br /&gt;                 Where : PGOA.po_header_id(+)=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER&lt;br /&gt;  AND POH.po_header_id=:$FLEX$.SE_PO_ASL_BLANKET_NUMBER&lt;br /&gt;  and PGOA.purchasing_org_id(+)=&lt;br /&gt;  decode(nvl(POH.global_agreement_flag,&#39;N&#39;),&#39;N&#39;,-999,&lt;br /&gt;  nvl(:$FLEX$.PO_ASL_PURCHASING_ORG:NULL,(:$PROFILES$.ORG_ID)))&lt;br /&gt;  and POV.vendor_site_id=decode(nvl(POH.global_agreement_flag,&#39;N&#39;),&#39;N&#39;,&lt;br /&gt;  POH.vendor_site_id,&lt;br /&gt;  PGOA.vendor_site_id)&lt;br /&gt;&lt;br /&gt; &lt;span style=&quot;font-weight:bold;&quot;&gt; Parameter 6 - Select Agreement Lines&lt;/span&gt;&lt;br /&gt;        LOV 6 - PO_ASL_LINES_SELECTION&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 7 - Assignment Set&lt;/span&gt;&lt;br /&gt;        LOV 7 - PO_ASL_ASSIGNMENT_SET&lt;br /&gt;  Default val - select assignment_set_name from mrp_assignment_sets where assignment_set_id=:$PROFILES$.MRP_DEFAULT_ASSIGNMENT_SET&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 8 - Sourcing Level&lt;/span&gt;&lt;br /&gt;        LOV 8 - PO_ASL_SOURCING_LEVEL&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 9 - Inv Org Enable&lt;/span&gt;&lt;br /&gt;        LOV 9 - PO_ASL_ENABLE_FLAG&lt;br /&gt;  Default val - select decode(:$FLEX$.PO_ASL_SOURCING_LEVEL,&#39;ITEM&#39;,NULL,&#39;Y&#39;) from dual&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 10 - Inventory Organization&lt;/span&gt;&lt;br /&gt;        LOV 10 - PO_ASL_INV_ORG&lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 11 - Sourcing Rule Name&lt;/span&gt;&lt;br /&gt;        LOV 11 - SE_PO_ASL_SR_RULE_NAME&lt;br /&gt;    Define LOV - Table : MRP_SOURCING_RULES MSR ,     org_organization_definitions oog&lt;br /&gt;                 Where : oog.organization_id = msr.organization_id &lt;br /&gt;          AND EXISTS &lt;br /&gt;          ( &lt;br /&gt;          SELECT &lt;br /&gt;              1 &lt;br /&gt;          FROM MRP_SR_RECEIPT_ORG MSRO, &lt;br /&gt;               MRP_SR_SOURCE_ORG MSSO &lt;br /&gt;          WHERE   MSR.SOURCING_RULE_ID=MSRO.SOURCING_RULE_ID&lt;br /&gt;              AND MSRO.SR_RECEIPT_ID=msso.SR_RECEIPT_ID &lt;br /&gt;              AND msso.vendor_id=:$FLEX$.PO_ASL_VENDOR &lt;br /&gt;              AND msso.vendor_site_id=:$FLEX$.SE_PO_ASL_VENDOR_SITE &lt;br /&gt;          )&lt;br /&gt;  and oog.organization_id=:$FLEX$.PO_ASL_INV_ORG&lt;br /&gt;                 Order By : oog.organization_name &quot;Organization&quot;&lt;br /&gt;     &lt;br /&gt;&lt;br /&gt;  &lt;span style=&quot;font-weight:bold;&quot;&gt;Parameter 12 - Release Generation Method&lt;/span&gt;&lt;br /&gt;        LOV 12 - PO_PDOI_REL_GEN_METHOD&lt;br /&gt;&lt;br /&gt;This concurrent program allows users to create ASLs from one specific or more quotations. We can also customize this program by adding a new parameter request_id so that only quotations with this request_id (probably the request_id of program Import of price catalog) will be treated.</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/8721783915516901085/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2011/03/how-to-import-asls-approved-supplier.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/8721783915516901085'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/8721783915516901085'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2011/03/how-to-import-asls-approved-supplier.html' title='API to import ASLs (approved supplier list) in Oracle from blanket agreements or quotations // Import des ASLs à partir des commandes ouverts ou prix'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-3438737960139824892</id><published>2011-03-02T02:42:00.000-08:00</published><updated>2011-03-02T03:00:29.813-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="adcmctl.sh"/><category scheme="http://www.blogger.com/atom/ns#" term="Concurrent manager"/><category scheme="http://www.blogger.com/atom/ns#" term="GTS"/><category scheme="http://www.blogger.com/atom/ns#" term="Relance"/><category scheme="http://www.blogger.com/atom/ns#" term="Start/Stop/Restart"/><category scheme="http://www.blogger.com/atom/ns#" term="Workflow"/><title type='text'>Start or stop Concurrent Manager by using unix script / Relance GTS avec shell Unix</title><content type='html'>After modication of workflow(pkg, wft or other workflow files), we have to restart the concurrent manager, otherwise the workflow will not work. &lt;br /&gt;&lt;br /&gt;The following steps allows us to restart the concurrent manager in Unix :&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style:italic;&quot;&gt;cd $COMMON_TOP/admin/scripts/$CONTEXT_NAME&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;Execute the script : &lt;span style=&quot;font-style:italic;&quot;&gt;adcmctl.sh stop apps/apps&lt;/span&gt;&lt;br /&gt; &lt;br /&gt;Wait that all process FNDLIBR are killed, to check : &lt;span style=&quot;font-style:italic;&quot;&gt;ps -fu $USER&lt;/span&gt;&lt;br /&gt;Sometimes this step could take several minutes.&lt;br /&gt;  &lt;br /&gt;To restart the concurrent manager : &lt;span style=&quot;font-style:italic;&quot;&gt;adcmctl.sh start apps/apps&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/3438737960139824892/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2011/03/start-or-stop-concurrent-manager-by.html#comment-form' title='1 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3438737960139824892'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3438737960139824892'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2011/03/start-or-stop-concurrent-manager-by.html' title='Start or stop Concurrent Manager by using unix script / Relance GTS avec shell Unix'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-201326291689914665</id><published>2011-01-25T06:03:00.000-08:00</published><updated>2011-01-25T06:25:52.583-08:00</updated><title type='text'>Customization of Oracle Workflow (AP Remittance advice workflow APPEWF)</title><content type='html'>The first thing before any action is amend Oracle workflow access in Workflow builder in order to amend the standard workflow APPEWF.wft :&lt;br /&gt;&lt;br /&gt;Menu : Help -&gt; About Oracle Workflow Builder XXXXXX&lt;br /&gt;&lt;br /&gt;In the opening window, modify the access level to 20 and enable the Allow modifications of customized objects case.&lt;br /&gt;&lt;br /&gt;Then we can modify the standard workflow file APPEWF.wft&lt;br /&gt;&lt;br /&gt;Example of modification : add cc list for workflow email(AP remittance advice email).&lt;br /&gt;&lt;br /&gt;Step 1 - Add a new global attribute in workflow : XX_CC_NAME&lt;br /&gt;&lt;br /&gt;Step 2 - Create a new attribute #WFM_CC in message level, and attached to the global attirbute created previously&lt;br /&gt;&lt;br /&gt;Step 3 - Initialize the global attribute XX_CC_NAME in PL/SQL package, in our case here, in AP_PAYMENT_EVENT_WF_PKG.get_check_info, add the following lines :&lt;br /&gt;&lt;br /&gt;    BEGIN&lt;br /&gt;      SELECT NVL(fpov.profile_option_value, &#39;&#39;)&lt;br /&gt;        INTO l_se_cc   &lt;br /&gt;        FROM fnd_profile_options fpo, fnd_profile_option_values fpov&lt;br /&gt;       WHERE fpo.application_id =20003&lt;br /&gt;         AND fpo.profile_option_name = &#39;XXXXXXX&#39; -- XXXXXX is the profil option&#39;s name&lt;br /&gt;         AND fpo.profile_option_id = fpov.profile_option_id&lt;br /&gt;         AND fpov.level_id = 10006&lt;br /&gt;         AND fpov.level_value = l_org_id;&lt;br /&gt;    EXCEPTION&lt;br /&gt;      WHEN OTHERS THEN&lt;br /&gt;        l_se_cc := &#39;&#39;;&lt;br /&gt;    END;    &lt;br /&gt;    wf_engine.setitemattrtext(p_item_type,&lt;br /&gt;                              p_item_key,&lt;br /&gt;                              &#39;XX_CC_NAME&#39;,&lt;br /&gt;                              l_se_cc);   &lt;br /&gt;&lt;br /&gt;Step 4 - Upload the new workflow, restart the GTS.</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/201326291689914665/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2011/01/customization-of-oracle-workflow-ap.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/201326291689914665'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/201326291689914665'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2011/01/customization-of-oracle-workflow-ap.html' title='Customization of Oracle Workflow (AP Remittance advice workflow APPEWF)'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-1666038295658010525</id><published>2010-12-17T07:31:00.000-08:00</published><updated>2011-03-01T11:13:19.320-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AP"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="invoice"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="status"/><category scheme="http://www.blogger.com/atom/ns#" term="statut"/><category scheme="http://www.blogger.com/atom/ns#" term="validation"/><title type='text'>Oracle - API to get AP invoice validation status via SQL Query</title><content type='html'>The AP invoice validation status is determinated in AP invoice Forms. There is only one API to get invoice approval status, but no API available to get the validation status. &lt;br /&gt;&lt;br /&gt;We developped the following function to return the AP invoice validation status. &lt;br /&gt;&lt;br /&gt;SQL:&lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style:italic;&quot;&gt;FUNCTION get_invoice_validation_status(l_invoice_id IN NUMBER) RETURN VARCHAR2 &lt;br /&gt; IS &lt;br /&gt;   l_status VARCHAR2(50);&lt;br /&gt;   l_validation_status VARCHAR2(50);&lt;br /&gt;   l_inv_sel_count NUMBER;&lt;br /&gt;   l_step     VARCHAR2(10);&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    l_NLS_TRANSLATION           varchar2(15) := &#39;NLS TRANSLATION&#39;;&lt;br /&gt;    l_QUICKPRO                  varchar2(8)  := &#39;QUICKPRO&#39;;&lt;br /&gt;    l_POSTING_STATUS            varchar2(14) := &#39;POSTING STATUS&#39;;&lt;br /&gt;    l_P                         varchar2(1)  := &#39;P&#39;;&lt;br /&gt;    l_S                         varchar2(1)  := &#39;S&#39;;&lt;br /&gt;    l_ANY_MULTIPLE              varchar2(12) := &#39;ANY MULTIPLE&#39;;&lt;br /&gt;    l_UNMATCHED                 varchar2(9)  := &#39;UNMATCHED&#39;;&lt;br /&gt;    l_SYSTEM                    varchar2(6)  := &#39;SYSTEM&#39;;&lt;br /&gt;    l_APPROVED                  varchar2(8)  := &#39;APPROVED&#39;;&lt;br /&gt;    l_CANCELLED                 varchar2(9)  := &#39;CANCELLED&#39;;&lt;br /&gt;    l_NEEDS_REAPPROVAL          varchar2(16) := &#39;NEEDS REAPPROVAL&#39;;&lt;br /&gt;    l_NEVER_APPROVED            varchar2(14) := &#39;NEVER APPROVED&#39;;&lt;br /&gt;    l_INVOICE_DISTRIBUTION_TYPE varchar2(25) := &#39;INVOICE DISTRIBUTION TYPE&#39;;&lt;br /&gt;    l_ITEM                      varchar2(4)  := &#39;ITEM&#39;;&lt;br /&gt;    l_INVOICE_TYPE              varchar2(12) := &#39;INVOICE TYPE&#39;;&lt;br /&gt;    l_STANDARD                  varchar2(8)  := &#39;STANDARD&#39;;&lt;br /&gt;    l_MISC_PHRASES              varchar2(12) := &#39;MISC PHRASES&#39;;&lt;br /&gt;    l_B                         varchar2(1)  := &#39;B&#39;;&lt;br /&gt;    l_SELECTED_FOR_PAYMENT      varchar2(20) := &#39;SELECTED FOR PAYMENT&#39;;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    l_YES_NO_ALL                varchar2(10) := &#39;YES_NO_ALL&#39;;&lt;br /&gt;    l_Y                         varchar2(1)  := &#39;Y&#39;;&lt;br /&gt;    l_N                         varchar2(1)  := &#39;N&#39;;&lt;br /&gt;&lt;br /&gt;    l_NLS_REPORT_PARAMETER      varchar2(20) := &#39;NLS REPORT PARAMETER&#39;;&lt;br /&gt;    l_ALL                       varchar2(3)  := &#39;ALL&#39;;&lt;br /&gt;    l_PREPAY_STATUS             varchar2(13) := &#39;PREPAY STATUS&#39;;&lt;br /&gt;    l_AVAILABLE                 varchar2(9)  := &#39;AVAILABLE&#39;;&lt;br /&gt;    l_FULL                      varchar2(4)  := &#39;FULL&#39;;&lt;br /&gt;    l_UNAPPROVED                varchar2(10) := &#39;UNAPPROVED&#39;;&lt;br /&gt;    l_UNPAID                    varchar2(6)  := &#39;UNPAID&#39;;&lt;br /&gt;    l_PERMANENT                 varchar2(9)  := &#39;PERMANENT&#39;;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;    l_AP_WFAPPROVAL_STATUS      varchar2(20) := &#39;AP_WFAPPROVAL_STATUS&#39;;&lt;br /&gt;    l_NOT_REQUIRED              varchar2(12) := &#39;NOT REQUIRED&#39;;&lt;br /&gt;    l_REQUIRED                  varchar2(8)  := &#39;REQUIRED&#39;;&lt;br /&gt;    l_INITIATED                 varchar2(9)  := &#39;INITIATED&#39;;&lt;br /&gt;    l_WFAPPROVED                varchar2(10) := &#39;WFAPPROVED&#39;;&lt;br /&gt;    l_REJECTED                  varchar2(8)  := &#39;REJECTED&#39;;&lt;br /&gt;    l_MANUALLY_APPROVED         varchar2(17) := &#39;MANUALLY APPROVED&#39;;&lt;br /&gt;    l_NEEDS_WFREAPPROVAL        varchar2(18) := &#39;NEEDS WFREAPPROVAL&#39;;&lt;br /&gt;&lt;br /&gt;    l_dummy fnd_lookup_values.meaning%TYPE; &lt;br /&gt;    l_nls_partial fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_selected fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_approved fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_cancelled fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_needs_reapproval fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_never_approved fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_selected_for_payment  fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_all fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_available fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_full fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_unapproved fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_unpaid fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_permanent fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_not_required fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_required fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_initiated fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_wfapproved fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_rejected fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_manually_approved fnd_lookup_values.meaning%TYPE;&lt;br /&gt;    l_nls_wf_needs_reapproval fnd_lookup_values.meaning%TYPE;&lt;br /&gt;&lt;br /&gt;CURSOR c_invoices is&lt;br /&gt;  SELECT     i.invoice_id&lt;br /&gt;            ,i.invoice_amount&lt;br /&gt;            ,i.payment_status_flag&lt;br /&gt;            ,i.invoice_type_lookup_code, i.invoice_num&lt;br /&gt;    FROM ap_invoices_all i&lt;br /&gt;   WHERE invoice_id = l_invoice_id;&lt;br /&gt;   &lt;br /&gt; BEGIN&lt;br /&gt;   l_step := &#39;1&#39;;&lt;br /&gt;   SELECT  l1.displayed_field,&lt;br /&gt;                l2.displayed_field,&lt;br /&gt;                l3.displayed_field,&lt;br /&gt;                l4.displayed_field,&lt;br /&gt;                l5.displayed_field,&lt;br /&gt;                l6.displayed_field,&lt;br /&gt;                l7.displayed_field,&lt;br /&gt;                l13.displayed_field,&lt;br /&gt;                l8.displayed_field,&lt;br /&gt;                l9.displayed_field,&lt;br /&gt;                l10.displayed_field,&lt;br /&gt;                l11.displayed_field,&lt;br /&gt;                l12.displayed_field,&lt;br /&gt;                l14.displayed_field&lt;br /&gt;        INTO    l_dummy, -- l_quickpro_prefix,&lt;br /&gt;                l_nls_partial,&lt;br /&gt;                l_nls_selected,&lt;br /&gt;                l_dummy, -- l_nls_multiple,&lt;br /&gt;                l_dummy, -- l_nls_unmatched,&lt;br /&gt;                l_dummy, -- l_nls_system,&lt;br /&gt;                l_nls_approved,&lt;br /&gt;                l_nls_cancelled,&lt;br /&gt;                l_nls_needs_reapproval,&lt;br /&gt;                l_nls_never_approved,&lt;br /&gt;                l_dummy, -- l_nls_item,&lt;br /&gt;                l_dummy, -- l_nls_standard,&lt;br /&gt;                l_dummy, -- l_nls_not_applicable,&lt;br /&gt;                l_nls_selected_for_payment&lt;br /&gt;        FROM    ap_lookup_codes l1,&lt;br /&gt;                ap_lookup_codes l2,&lt;br /&gt;                ap_lookup_codes l3,&lt;br /&gt;                ap_lookup_codes l4,&lt;br /&gt;                ap_lookup_codes l5,&lt;br /&gt;                ap_lookup_codes l6,&lt;br /&gt;                ap_lookup_codes l7,&lt;br /&gt;                ap_lookup_codes l8,&lt;br /&gt;                ap_lookup_codes l9,&lt;br /&gt;                ap_lookup_codes l10,&lt;br /&gt;                ap_lookup_codes l11,&lt;br /&gt;                ap_lookup_codes l12,&lt;br /&gt;                ap_lookup_codes l13,&lt;br /&gt;                ap_lookup_codes l14&lt;br /&gt;           WHERE l1.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l1.lookup_code = l_QUICKPRO&lt;br /&gt;        AND l2.lookup_type = l_POSTING_STATUS&lt;br /&gt;        AND l2.lookup_code = l_P&lt;br /&gt;        AND l3.lookup_type = l_POSTING_STATUS&lt;br /&gt;        AND l3.lookup_code = l_S&lt;br /&gt;        AND l4.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l4.lookup_code = l_ANY_MULTIPLE&lt;br /&gt;        AND l5.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l5.lookup_code = l_UNMATCHED&lt;br /&gt;        AND l6.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l6.lookup_code = l_SYSTEM&lt;br /&gt;        AND l7.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l7.lookup_code = l_APPROVED&lt;br /&gt;        AND l13.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l13.lookup_code = l_CANCELLED&lt;br /&gt;        AND l8.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l8.lookup_code = l_NEEDS_REAPPROVAL&lt;br /&gt;        AND l9.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l9.lookup_code = l_NEVER_APPROVED&lt;br /&gt;        AND l10.lookup_type = l_INVOICE_DISTRIBUTION_TYPE&lt;br /&gt;        AND l10.lookup_code = l_ITEM&lt;br /&gt;        AND l11.lookup_type = l_INVOICE_TYPE&lt;br /&gt;        AND l11.lookup_code = l_STANDARD&lt;br /&gt;        AND l12.lookup_type = l_MISC_PHRASES&lt;br /&gt;        AND l12.lookup_code = l_B&lt;br /&gt;        AND l14.lookup_type = l_NLS_TRANSLATION&lt;br /&gt;        AND l14.lookup_code = l_SELECTED_FOR_PAYMENT;&lt;br /&gt;        l_step := &#39;2&#39;;&lt;br /&gt;        SELECT l1.displayed_field,&lt;br /&gt;               l2.displayed_field,&lt;br /&gt;               l3.displayed_field,&lt;br /&gt;               l4.displayed_field,&lt;br /&gt;               l5.displayed_field,&lt;br /&gt;               l6.displayed_field&lt;br /&gt;        INTO   l_nls_all,&lt;br /&gt;               l_nls_available,&lt;br /&gt;               l_nls_full,&lt;br /&gt;               l_nls_unapproved,&lt;br /&gt;               l_nls_unpaid,&lt;br /&gt;               l_nls_permanent&lt;br /&gt;        FROM   ap_lookup_codes l1,&lt;br /&gt;               ap_lookup_codes l2,&lt;br /&gt;               ap_lookup_codes l3,&lt;br /&gt;               ap_lookup_codes l4,&lt;br /&gt;               ap_lookup_codes l5,&lt;br /&gt;               ap_lookup_codes l6&lt;br /&gt;        WHERE  l1.lookup_type = l_NLS_REPORT_PARAMETER&lt;br /&gt;        AND    l1.lookup_code = l_ALL&lt;br /&gt;        AND    l2.lookup_type = l_PREPAY_STATUS&lt;br /&gt;        AND    l2.lookup_code = l_AVAILABLE&lt;br /&gt;        AND    l3.lookup_type = l_PREPAY_STATUS&lt;br /&gt;        AND    l3.lookup_code = l_FULL&lt;br /&gt;        AND    l4.lookup_type = l_PREPAY_STATUS&lt;br /&gt;        AND    l4.lookup_code = l_UNAPPROVED&lt;br /&gt;        AND    l5.lookup_type = l_PREPAY_STATUS&lt;br /&gt;        AND    l5.lookup_code = l_UNPAID&lt;br /&gt;        AND    l6.lookup_type = l_PREPAY_STATUS&lt;br /&gt;    AND    l6.lookup_code = l_PERMANENT;&lt;br /&gt;    &lt;br /&gt;    l_step := &#39;3&#39;;&lt;br /&gt;        SELECT l1.displayed_field,&lt;br /&gt;               l2.displayed_field,&lt;br /&gt;               l3.displayed_field,&lt;br /&gt;               l4.displayed_field,&lt;br /&gt;               l5.displayed_field,&lt;br /&gt;               l6.displayed_field,&lt;br /&gt;               l7.displayed_field&lt;br /&gt;        INTO   l_nls_not_required,&lt;br /&gt;               l_nls_required,&lt;br /&gt;               l_nls_initiated,&lt;br /&gt;               l_nls_wfapproved,&lt;br /&gt;               l_nls_rejected,&lt;br /&gt;               l_nls_manually_approved,&lt;br /&gt;               l_nls_wf_needs_reapproval&lt;br /&gt;        FROM   ap_lookup_codes l1,&lt;br /&gt;               ap_lookup_codes l2,&lt;br /&gt;               ap_lookup_codes l3,&lt;br /&gt;               ap_lookup_codes l4,&lt;br /&gt;               ap_lookup_codes l5,&lt;br /&gt;               ap_lookup_codes l6,&lt;br /&gt;               ap_lookup_codes l7&lt;br /&gt;        WHERE  l1.lookup_type = l_AP_WFAPPROVAL_STATUS&lt;br /&gt;        AND    l1.lookup_code = l_NOT_REQUIRED&lt;br /&gt;        AND    l2.lookup_type = l_AP_WFAPPROVAL_STATUS&lt;br /&gt;        AND    l2.lookup_code = l_REQUIRED&lt;br /&gt;        AND    l3.lookup_type = l_AP_WFAPPROVAL_STATUS&lt;br /&gt;        AND    l3.lookup_code = l_INITIATED&lt;br /&gt;        AND    l4.lookup_type = l_AP_WFAPPROVAL_STATUS&lt;br /&gt;        AND    l4.lookup_code = l_WFAPPROVED&lt;br /&gt;        AND    l5.lookup_type = l_AP_WFAPPROVAL_STATUS&lt;br /&gt;        AND    l5.lookup_code = l_REJECTED&lt;br /&gt;        AND    l6.lookup_type = l_AP_WFAPPROVAL_STATUS&lt;br /&gt;    AND    l6.lookup_code = l_MANUALLY_APPROVED&lt;br /&gt;        AND    l7.lookup_type = l_AP_WFAPPROVAL_STATUS&lt;br /&gt;    AND    l7.lookup_code = l_NEEDS_WFREAPPROVAL;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;FOR r in c_invoices loop&lt;br /&gt;  l_step := &#39;4&#39;;&lt;br /&gt;  l_status := AP_INVOICES_PKG.GET_APPROVAL_STATUS(r.INVOICE_ID&lt;br /&gt;            ,r.INVOICE_AMOUNT&lt;br /&gt;            ,r.PAYMENT_STATUS_FLAG&lt;br /&gt;            ,r.INVOICE_TYPE_LOOKUP_CODE );&lt;br /&gt;  l_step := &#39;5&#39;;&lt;br /&gt;--dbms_output.put_line(r.invoice_num || &#39; - &#39; || l_status);&lt;br /&gt;&lt;br /&gt;  if (l_status = &lt;br /&gt;              &#39;NEVER APPROVED&#39;) then &lt;br /&gt;        l_validation_status := &lt;br /&gt;             l_nls_never_approved;&lt;br /&gt;      elsif (l_status = &#39;APPROVED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_approved;&lt;br /&gt;      elsif (l_status = &#39;CANCELLED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_cancelled;&lt;br /&gt;      elsif (l_status = &lt;br /&gt;              &#39;NEEDS REAPPROVAL&#39;) then &lt;br /&gt;        l_validation_status := &lt;br /&gt;             l_nls_needs_reapproval;&lt;br /&gt;      elsif (l_status = &#39;AVAILABLE&#39;) then &lt;br /&gt;        l_validation_status := l_nls_available;&lt;br /&gt;      elsif (l_status = &#39;FULL&#39;) then &lt;br /&gt;        l_validation_status := l_nls_full;&lt;br /&gt;      elsif (l_status = &#39;UNAPPROVED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_unapproved;&lt;br /&gt;      elsif (l_status = &#39;UNPAID&#39;) then &lt;br /&gt;        l_validation_status := l_nls_unpaid;&lt;br /&gt;      elsif (l_status = &#39;PERMANENT&#39;) then &lt;br /&gt;        l_validation_status := l_nls_permanent;&lt;br /&gt;      elsif (l_status = &#39;NOT REQUIRED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_not_required;&lt;br /&gt;      elsif (l_status = &#39;REQUIRED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_required;&lt;br /&gt;     elsif (l_status = &#39;INITIATED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_initiated;&lt;br /&gt;     elsif (l_status = &#39;WFAPPROVED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_wfapproved;&lt;br /&gt;     elsif (l_status = &#39;REJECTED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_rejected;&lt;br /&gt;     elsif (l_status = &#39;MANUALLY APPROVED&#39;) then &lt;br /&gt;        l_validation_status := l_nls_manually_approved;  &lt;br /&gt;     elsif (l_status = &#39;NEEDS WFREAPPROVAL&#39;) then &lt;br /&gt;        l_validation_status := l_nls_wf_needs_reapproval;    &lt;br /&gt;     end if;&lt;br /&gt;&lt;br /&gt;     -- Added for Payment Process Enhancements.&lt;br /&gt;     if (l_status &lt;br /&gt;                           IN (&#39;APPROVED&#39;,&#39;UNPAID&#39;)) then&lt;br /&gt;          SELECT count(*)&lt;br /&gt;          INTO   l_inv_sel_count&lt;br /&gt;          FROM   ap_payment_schedules&lt;br /&gt;          WHERE  invoice_id = r.invoice_id&lt;br /&gt;          AND    checkrun_id IS NOT NULL&lt;br /&gt;          AND rownum =1;  --bug5691219&lt;br /&gt;&lt;br /&gt;          if (l_inv_sel_count &gt; 0) then&lt;br /&gt;             l_validation_status :=&lt;br /&gt;                 l_nls_selected_for_payment;&lt;br /&gt;          end if;&lt;br /&gt;     end if;&lt;br /&gt; &lt;br /&gt;  --dbms_output.put_line(r.invoice_num || &#39; - &#39; || l_validation_status);&lt;br /&gt;&lt;br /&gt;END LOOP;&lt;br /&gt;   RETURN(l_validation_status);&lt;br /&gt;   &lt;br /&gt; EXCEPTION&lt;br /&gt;   WHEN OTHERS THEN &lt;br /&gt;     RETURN (&#39;l_step = &#39; || l_step || &#39; &#39; || SQLERRM);&lt;br /&gt; END get_invoice_validation_status;&lt;/span&gt;&lt;br /&gt;&lt;br /&gt;This function should be used in Oracle application environnement, it will not work in TOAD or SQL Developper even if after contexualization...</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/1666038295658010525/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/12/get-ap-invoice-validation-status-via.html#comment-form' title='4 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/1666038295658010525'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/1666038295658010525'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/12/get-ap-invoice-validation-status-via.html' title='Oracle - API to get AP invoice validation status via SQL Query'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>4</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-5695282033160205122</id><published>2010-12-17T06:45:00.000-08:00</published><updated>2010-12-17T07:01:15.564-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="AP"/><category scheme="http://www.blogger.com/atom/ns#" term="AP_CHECKS_ALL"/><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="Payment"/><title type='text'>Oracle AP Payment API</title><content type='html'>There is no public Oracle API for the AP payments. We have developed a custom interface by using the standard procedure : ap_checks_pkg.insert_row.&lt;br /&gt;&lt;br /&gt;Suppose that we have the following informations at the beginning :&lt;br /&gt;&lt;br /&gt;siaxp2.org_id,&lt;br /&gt;siaxp2.invoice_currency_code,&lt;br /&gt;siaxp2.invoice_amount,&lt;br /&gt;siaxp.reference_id, &lt;br /&gt;siaxp.currency_code,&lt;br /&gt;DECODE(siaxp2.invoice_currency_code,&#39;XOF&#39;,siaxp2.invoice_amount,siaxp.payment_amount)   payment_amount,&lt;br /&gt;siaxp.base_amount,&lt;br /&gt;siaxp.payment_date,&lt;br /&gt;siaxp.transaction_code,&lt;br /&gt;siaxp.internal_bank_account,&lt;br /&gt;siaxp.vendor_id,&lt;br /&gt;siaxp.vendor_site_id  &lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style:italic;&quot;&gt;-- Calculate bank account &lt;br /&gt;&lt;br /&gt;                SELECT abaa2.bank_account_id,&lt;br /&gt;                       abaa2.currency_code&lt;br /&gt;                INTO   n_internal_bank_account_id,&lt;br /&gt;                       n_currency_code&lt;br /&gt;                FROM   ap_bank_accounts_all abaa,&lt;br /&gt;                       ap_bank_accounts_all abaa2&lt;br /&gt;                WHERE  abaa.attribute1 = r_payment_xrt.internal_bank_account&lt;br /&gt;                AND    abaa.org_id = abaa2.org_id&lt;br /&gt;                AND    abaa.bank_account_name = abaa2.bank_account_name&lt;br /&gt;                AND    abaa.bank_branch_id = abaa2.bank_branch_id&lt;br /&gt;                AND    abaa2.org_id = r_payment_xrt.org_id;&lt;br /&gt;&lt;br /&gt;-- Calculate payment document &lt;br /&gt;&lt;br /&gt;                SELECT ACS.LAST_DOCUMENT_NUM+1,&lt;br /&gt;                       acs.check_format_id,&lt;br /&gt;                       acs.check_stock_id,&lt;br /&gt;                       apaa.bank_account_num,&lt;br /&gt;                       apaa.bank_account_name,&lt;br /&gt;                       apaa.account_type,&lt;br /&gt;                       acs.doc_category_code,&lt;br /&gt;                       fdsa.doc_sequence_id&lt;br /&gt;                INTO   n_check_number,&lt;br /&gt;                       n_check_format_id,&lt;br /&gt;                       n_check_stock_id,&lt;br /&gt;                       n_bank_account_num,&lt;br /&gt;                       n_bank_account_name,&lt;br /&gt;                       n_account_type,&lt;br /&gt;                       v_doc_category_code,&lt;br /&gt;                       n_doc_sequence_id&lt;br /&gt;                FROM   ap_check_stocks_all acs,&lt;br /&gt;                       ap_check_formats acf,&lt;br /&gt;                       ap_bank_accounts_all apaa,&lt;br /&gt;                       fnd_doc_sequence_assignments fdsa,&lt;br /&gt;                       ap_bank_branches abb&lt;br /&gt;                WHERE  abb.bank_branch_id = apaa.bank_branch_id&lt;br /&gt;                AND    apaa.bank_account_id = n_internal_bank_account_id&lt;br /&gt;                AND    apaa.set_of_books_id = r_societe.set_of_books_id&lt;br /&gt;                AND    apaa.bank_account_id = acs.bank_account_id&lt;br /&gt;                AND    NVL(acs.inactive_date, SYSDATE+1) &gt; SYSDATE&lt;br /&gt;                AND    acs.check_format_id = acf.check_format_id&lt;br /&gt;                AND    acf.payment_method_lookup_code = &#39;EFT&#39;&lt;br /&gt;                AND    acs.doc_category_code = fdsa.category_code&lt;br /&gt;                AND    acs.name = DECODE(r_payment_xrt.currency_code,n_currency_code,&#39;VIREMENT&#39;,&#39;VIRDEV&#39;)&lt;br /&gt;                AND    fdsa.method_code= &#39;A&#39;&lt;br /&gt;                AND    fdsa.set_of_books_id = r_societe.set_of_books_id&lt;br /&gt;                AND    ROWNUM = 1;&lt;br /&gt;&lt;br /&gt;-- Calculate supplier info&lt;br /&gt;&lt;br /&gt;                SELECT pv.vendor_name,&lt;br /&gt;                       pvsa.vendor_site_code,&lt;br /&gt;                       pv.vendor_id,&lt;br /&gt;                       pvsa.vendor_site_id,&lt;br /&gt;                       pvsa.address_line1,&lt;br /&gt;                       pvsa.address_line2,&lt;br /&gt;                       pvsa.address_line3,&lt;br /&gt;                       pvsa.city,&lt;br /&gt;                       pvsa.country&lt;br /&gt;                INTO   v_vendor_name,&lt;br /&gt;                       v_vendor_site_code,&lt;br /&gt;                       n_vendor_id,&lt;br /&gt;                       n_vendor_site_id,&lt;br /&gt;                       v_address_line1,&lt;br /&gt;                       v_address_line2,&lt;br /&gt;                       v_address_line3,&lt;br /&gt;                       v_city,&lt;br /&gt;                       v_country&lt;br /&gt;                FROM   po_vendor_sites_all pvsa,&lt;br /&gt;                       po_vendors pv&lt;br /&gt;                WHERE  pvsa.vendor_site_id = r_payment_xrt.vendor_site_id&lt;br /&gt;                AND    pv.vendor_id = pvsa.vendor_id;&lt;br /&gt;&lt;br /&gt;-- Check id &lt;br /&gt;&lt;br /&gt;              SELECT ap_checks_s.NEXTVAL&lt;br /&gt;                INTO n_check_id&lt;br /&gt;                FROM dual;&lt;br /&gt;&lt;br /&gt;-- Sequence &lt;br /&gt;&lt;br /&gt;                SELECT db_sequence_name &lt;br /&gt;                INTO   v_sequence&lt;br /&gt;                FROM   fnd_document_sequences &lt;br /&gt;                WHERE  doc_sequence_id = n_doc_sequence_id;&lt;br /&gt;&lt;br /&gt;-- Doc sequence value&lt;br /&gt;&lt;br /&gt;                v_proc_stmt := &#39;select &#39; || v_sequence || &#39;.nextval into :next_val from sys.dual&#39;;&lt;br /&gt;                EXECUTE IMMEDIATE v_proc_stmt INTO n_doc_sequence_value;&lt;br /&gt;&lt;br /&gt;-- Final Insertion &lt;br /&gt;&lt;br /&gt;ap_checks_pkg.insert_row (&lt;br /&gt;                  x_rowid                        =&gt;  v_rowid,&lt;br /&gt;                  x_amount                       =&gt;  r_payment_xrt.payment_amount,&lt;br /&gt;                  x_bank_account_id              =&gt;  n_internal_bank_account_id,&lt;br /&gt;                  x_bank_account_name            =&gt;  n_bank_account_name,&lt;br /&gt;                  x_check_date                   =&gt;  r_payment_xrt.payment_date,&lt;br /&gt;                  x_check_id                     =&gt;  n_check_id,&lt;br /&gt;                  x_check_number                 =&gt;  n_check_number,&lt;br /&gt;                  x_currency_code                =&gt;  r_payment_xrt.invoice_currency_code,&lt;br /&gt;                  x_last_updated_by              =&gt;  l_user_id,&lt;br /&gt;                  x_last_update_date             =&gt;  SYSDATE,&lt;br /&gt;                  x_payment_method_lookup_code   =&gt;  &#39;EFT&#39;,&lt;br /&gt;                  x_payment_type_flag            =&gt;  &#39;Q&#39;,&lt;br /&gt;                  x_address_line1                =&gt;  v_address_line1,&lt;br /&gt;                  x_address_line2                =&gt;  v_address_line2,&lt;br /&gt;                  x_address_line3                =&gt;  v_address_line3,&lt;br /&gt;                  x_checkrun_name                =&gt;  &#39;Règlement express : ID=&#39;||TO_CHAR(n_check_id),&lt;br /&gt;                  x_check_format_id              =&gt;  n_check_format_id,&lt;br /&gt;                  x_check_stock_id               =&gt;  n_check_stock_id,&lt;br /&gt;                  x_city                         =&gt;  v_city,&lt;br /&gt;                  x_country                      =&gt;  v_country,&lt;br /&gt;                  x_created_by                   =&gt;  l_user_id,&lt;br /&gt;                  x_creation_date                =&gt;  SYSDATE,&lt;br /&gt;                  x_last_update_login            =&gt;  l_user_id,&lt;br /&gt;                  x_status_lookup_code           =&gt;  &#39;NEGOTIABLE&#39;,&lt;br /&gt;                  x_vendor_name                  =&gt;  v_vendor_name,&lt;br /&gt;                  x_vendor_site_code             =&gt;  v_vendor_site_code,&lt;br /&gt;                  x_external_bank_account_id     =&gt;  n_external_bank_account_id,&lt;br /&gt;                  x_bank_account_num             =&gt;  n_external_bank_account_num,&lt;br /&gt;                  x_doc_category_code            =&gt;  v_doc_category_code,&lt;br /&gt;                  x_doc_sequence_id              =&gt;  n_doc_sequence_id,&lt;br /&gt;                  x_doc_sequence_value           =&gt;  n_doc_sequence_value,&lt;br /&gt;                  x_org_id                       =&gt;  n_org_id,&lt;br /&gt;                  x_vendor_id                    =&gt;  n_vendor_id,&lt;br /&gt;                  x_vendor_site_id               =&gt;  n_vendor_site_id,&lt;br /&gt;                  x_exchange_rate                =&gt;  n_exchange_rate, --r_payment_xrt.base_amount/r_payment_xrt.payment_amount,&lt;br /&gt;                  x_exchange_date                =&gt;  n_exchange_date, --r_payment_xrt.payment_date,&lt;br /&gt;                  x_exchange_rate_type           =&gt;  n_exchange_rate_type, --&#39;User&#39;,&lt;br /&gt;                  x_base_amount                  =&gt;  n_base_amount, -- r_payment_xrt.base_amount, 1.3&lt;br /&gt;                  x_calling_sequence             =&gt;  v_sequence&lt;br /&gt;                );&lt;br /&gt;&lt;br /&gt;ap_pay_invoice_pkg.ap_pay_invoice (&lt;br /&gt;                      p_invoice_id                  =&gt; r.invoice_id,&lt;br /&gt;                      p_check_id                    =&gt; n_check_id,&lt;br /&gt;                      p_payment_num                 =&gt; r.payment_num,&lt;br /&gt;                      p_invoice_payment_id          =&gt; n_invoice_payment_id,&lt;br /&gt;                      p_period_name                 =&gt; n_period_name,&lt;br /&gt;                      p_accounting_date             =&gt; r_payment_xrt.payment_date,&lt;br /&gt;                      p_amount                      =&gt; r.amount_remaining,&lt;br /&gt;                      p_discount_taken              =&gt; 0,&lt;br /&gt;                      p_invoice_base_amount         =&gt; ROUND(r.amount_remaining * n_exchange_rate, 2),   -- 1.3 n_invoice_base_amount,                    -- A confirmer&lt;br /&gt;                      p_payment_base_amount         =&gt; ROUND(r.amount_remaining * n_exchange_rate, 2),                -- A confirmer&lt;br /&gt;                      p_accrual_posted_flag         =&gt; &#39;N&#39;,&lt;br /&gt;                      p_cash_posted_flag            =&gt; &#39;N&#39;,&lt;br /&gt;                      p_posted_flag                 =&gt; &#39;N&#39;,&lt;br /&gt;                      p_set_of_books_id             =&gt; n_sob_id,&lt;br /&gt;                      p_last_updated_by             =&gt; l_user_id,&lt;br /&gt;                      p_last_update_login           =&gt; l_user_id,&lt;br /&gt;                      p_currency_code               =&gt; r_payment_xrt.invoice_currency_code,&lt;br /&gt;                      p_exchange_rate               =&gt; n_exchange_rate,&lt;br /&gt;                      p_exchange_rate_type          =&gt; n_exchange_rate_type, --&#39;User&#39;,&lt;br /&gt;                      p_exchange_date               =&gt; n_exchange_date, --r_payment_xrt.payment_date,&lt;br /&gt;                      p_replace_flag                =&gt; &#39;N&#39;,&lt;br /&gt;                      p_bank_account_id             =&gt; n_external_bank_account_id,&lt;br /&gt;                      p_bank_account_num            =&gt; n_external_bank_account_num,&lt;br /&gt;                      p_payment_mode                =&gt; &#39;PAY&#39;&lt;br /&gt;                    );&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/5695282033160205122/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/12/oracle-ap-payment-api.html#comment-form' title='3 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/5695282033160205122'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/5695282033160205122'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/12/oracle-ap-payment-api.html' title='Oracle AP Payment API'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-8822010568650187707</id><published>2010-12-17T05:54:00.000-08:00</published><updated>2010-12-17T07:02:51.080-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="API"/><category scheme="http://www.blogger.com/atom/ns#" term="mass close PO"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle"/><category scheme="http://www.blogger.com/atom/ns#" term="PO"/><category scheme="http://www.blogger.com/atom/ns#" term="PO_ACTIONS.CLOSE_PO"/><title type='text'>Oracle PO API to mass close PO</title><content type='html'>The following procedure has to be executed in Oracle environnement, but not in TOAD or SQL Developper with contexualization. &lt;br /&gt;&lt;br /&gt;&lt;span style=&quot;font-style:italic;&quot;&gt;PROCEDURE Mass_close_PO(&lt;br /&gt;                          PR_po_header_id IN NUMBER, &lt;br /&gt;                          PR_po_line_id IN NUMBER, &lt;br /&gt;                          PR_po_shipment_id IN NUMBER, &lt;br /&gt;                          PR_action IN VARCHAR2, &lt;br /&gt;                          PR_reason IN VARCHAR2,&lt;br /&gt;                          PR_result OUT BOOLEAN,&lt;br /&gt;                          PR_return_code OUT VARCHAR2&lt;br /&gt;                          ) IS&lt;br /&gt;    -- =====================================================================&lt;br /&gt;    -- P R O C E D U R E   Mass_close_PO&lt;br /&gt;    -- =====================================================================&lt;br /&gt;    -- Description : Mass close or finally close PO&lt;br /&gt;    -- =====================================================================&lt;br /&gt;    -- I N P U T&lt;br /&gt;    -- =====================================================================&lt;br /&gt;    --     Nom                     Description&lt;br /&gt;    -- PR_po_header_id            po_header_id&lt;br /&gt;    -- PR_po_line_id              po_line_id&lt;br /&gt;    -- PR_po_shipment_id          po_shipment_id&lt;br /&gt;    -- PR_action                  po_action&lt;br /&gt;    -- PR_reason                  po_closed_reason&lt;br /&gt;    -- =====================================================================&lt;br /&gt;    -- O U T P U T&lt;br /&gt;    -- =====================================================================&lt;br /&gt;    --     Nom                    Description&lt;br /&gt;    -- PR_result                  TRUE or FALSE             &lt;br /&gt;    -- PR_return_code             Error message &lt;br /&gt;    -- =====================================================================    &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;  BEGIN&lt;br /&gt;    g_step := &#39;Mass_close_PO - PR_po_header_id = &#39;|| PR_po_header_id || &#39; PR_po_line_id = &#39; || PR_po_line_id || &#39; PR_po_shipment_id = &#39; || PR_po_shipment_id;&lt;br /&gt;    fnd_file.put_line(fnd_file.log, to_char(SYSDATE,&#39;DD-MM-RRRR HH24:MI:SS : &#39;) || g_step);&lt;br /&gt;&lt;br /&gt;    PR_result := PO_ACTIONS.CLOSE_PO( &lt;br /&gt;                    P_DOCID =&gt; PR_po_header_id, &lt;br /&gt;                    P_DOCTYP =&gt; &#39;PO&#39;, &lt;br /&gt;                    P_DOCSUBTYP =&gt; &#39;STANDARD&#39;, &lt;br /&gt;                    P_LINEID =&gt; PR_po_line_id,&lt;br /&gt;                    P_SHIPID =&gt; PR_po_shipment_id,&lt;br /&gt;                    P_ACTION =&gt; PR_action, &lt;br /&gt;                    P_REASON =&gt; PR_reason, &lt;br /&gt;                    P_CALLING_MODE =&gt; &#39;PO&#39;, &lt;br /&gt;                    P_CONC_FLAG =&gt; &#39;N&#39;, &lt;br /&gt;                    P_RETURN_CODE =&gt; PR_return_code, &lt;br /&gt;                    P_AUTO_CLOSE =&gt; &#39;N&#39; ,&lt;br /&gt;                    P_ACTION_DATE =&gt; SYSDATE ,&lt;br /&gt;                    P_ORIGIN_DOC_ID =&gt; NULL &lt;br /&gt;                  );&lt;br /&gt;&lt;br /&gt;  EXCEPTION&lt;br /&gt;    WHEN OTHERS THEN&lt;br /&gt;      RAISE;&lt;br /&gt;  END Mass_close_PO; &lt;/span&gt;&lt;br /&gt;&lt;br /&gt;  Create a cursor to select eligible shipment lines in po_line_locations_all. Specify the action (CLOSE or FINALLY CLOSE) and the closed reason, call the below procedure to mass close PO.&lt;br /&gt;&lt;br /&gt;  The standard logic of this API will be the following : after closing the shipment line, the program will control the related po line, if all shipment line are closed or finally closed, api will close this po line. Item for the po header, if all related po lines are closed or finally closed, api will close the po header.</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/8822010568650187707/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/12/oracle-po-api-to-mass-close-po.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/8822010568650187707'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/8822010568650187707'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/12/oracle-po-api-to-mass-close-po.html' title='Oracle PO API to mass close PO'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-5524900352287176296</id><published>2010-05-30T16:42:00.001-07:00</published><updated>2010-05-30T16:49:20.941-07:00</updated><title type='text'>推荐两个智能化图像、声音搜索网站</title><content type='html'>1,[ http://tineye.com ]&lt;br /&gt;这是个很酷的网站，如果你有张你不知道的明星的照片，或者是某处风景图等等，你可以从自己电脑上传图片，，然后点左面的那个框，上传，让它进行对比，帮你找&lt;br /&gt;&lt;br /&gt;比如说，任意一张图，或者是画，你不知道它的名字，但是你可以上传上去，TINEYE会马上显示出一些有这个图片的网址，那么你可以点击这个网址，看看对你寻找图片的出处有没有帮助。&lt;br /&gt;&lt;br /&gt;智能化的图片对比搜索技术，对人们的生产生活产生的有益影响都是巨大的！&lt;br /&gt;&lt;br /&gt;2，[ http://www.midomi.com/ ]&lt;br /&gt;这是一个很好玩的网站，大家在看视频的时候，比如说，WOW有关的PVP视频，里面有很多喜欢的歌曲，但是你不知道名字。你可以在优酷上发留言问，有人回答，那再好不过，没人回答就傻眼了？&lt;br /&gt;&lt;br /&gt;不，你可以上这个网站，首页上就有录音功能，你可以开麦，然后哼唱一段。让智能化的米多米帮你搜索你要的歌曲。&lt;br /&gt;&lt;br /&gt;如果你实在五音不全，你可以把你要搜索的歌曲拷一段放进你手机等能功放的设备里，然后让手机话筒对着你的麦、、、</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/5524900352287176296/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/05/blog-post_30.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/5524900352287176296'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/5524900352287176296'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/05/blog-post_30.html' title='推荐两个智能化图像、声音搜索网站'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-3455631372345522012</id><published>2010-05-30T16:32:00.001-07:00</published><updated>2010-05-30T16:32:38.922-07:00</updated><title type='text'>图片搜索时代终于来临了？</title><content type='html'>关于图片搜索和声音搜索，我已经期待和思考了很久。今天终于看到国内一家公司推出的图片识别搜索服务，很是兴奋，赶快试用了一下。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;淘淘搜网址：http://www.taotaosou.com/ （不禁PS一下，估计是淘宝出资赞助的，连名字都这么淘。。。）&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;目前这家网站还只能搜索T-Shirt。可搜图片有两种方式，一种是本地上传，一种是网络上的图片。&lt;br /&gt;&lt;br /&gt;关于第一种方式，可以理解为哪一天你走在大街上，看到一MM传的衣服特别可爱，也想买一件，但又不知道能到哪儿买。你就可以拿出你的手机，偷拍下这个MM，完之后把照片上传到这个网站，这网站就会到淘宝上的图片库里搜同样样子的T-Shirt。&lt;br /&gt;&lt;br /&gt;关于第二种方式，方便了追星族模仿明星的穿着。我们如果对哪个明星的穿着感兴趣的话，就可以把新闻上的照片导过来，开动搜索，查一查淘宝上有没有人翻这件衣服的。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;放眼当前的互联网市场，图片搜索功能到现在都没有成功研究出来（最起码是没有一家成功推广的），个中肯定是有原因的。一个可能就是技术问题。我估计Image的后台识别和处理方式不像文字数字那样简单。关于这一方面，可能还没有制定统一的标准。再一个就是商业化的问题。没有商业投资的话，研究人员就不可能继续下去。在这一点上，这家网站就非常聪明。联合淘宝开发，既实现了对图片搜索的研究，又可以将阶段性的成果结合淘宝的庞大图片库来测试，阶段性上线后即可以为淘宝服务，真是淘宝和研究人员的双赢。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;再来说说我的测试结果：概念很好，结果很差！&lt;br /&gt;&lt;br /&gt;我从电脑里找了一张模特T-Shirt图，传上去，搜了一下。结果搜不到，也算正常吧，这衣服可能国内淘宝上没卖的。在提示我没有找到同样衣服的同时，就跟google一样，其他的T-Shirt在下边建议了出来。好吧，那我就用一件你建议给我的衣服搜，看看能不能搜出同样的出来。我就copy了一件衣服图片的link，用第二种方法开搜。结果同样的衣服没搜出来，到搜出来了10几件八杆子打不着的T-Shirt。。。 哭笑不得。。。&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;这家网站的理念真的不错，但如果没有成熟技术的支持，匆忙上线只能是拔苗助长，摆出来贻笑大方。&lt;br /&gt;&lt;br /&gt;图片搜索和声音搜索到现在还没有大范围推广，肯定是理论和技术上还有没过关的地方。希望研究人员多多努力，赶快把这项技术成功的推广开来。</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/3455631372345522012/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/05/blog-post.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3455631372345522012'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3455631372345522012'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/05/blog-post.html' title='图片搜索时代终于来临了？'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-3929787739579917455</id><published>2010-05-30T15:23:00.001-07:00</published><updated>2010-05-30T15:23:58.173-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="创业"/><title type='text'>创业者的Plan A和Plan B</title><content type='html'>创业是在生与死之间的搏弈，创业之路要经过火焰山，要经过地狱之门，为了确保行程安全，上路时最好准备两手计划：Plan A和Plan B。&lt;br /&gt;&lt;br /&gt;Plan A：如果我能搞到VC的钱，就高调出发，过把瘾，好好地大干一场！&lt;br /&gt;&lt;br /&gt;Plan B：如果我搞不到VC的钱，就自己掏钱，低调苦干，一定赚进钱来！&lt;br /&gt;&lt;br /&gt;Plan A：产品多样化，产业链上下都要抓，企业多元化经营才能不在一棵树上吊死。&lt;br /&gt;&lt;br /&gt;Plan B：只做一件事情，把一件事情做好、做透、做到了极致，别的什么也不去做。&lt;br /&gt;&lt;br /&gt;Plan A：市场是要靠钱去砸出来的，市场费用的多少，决定了我的市场占有率。&lt;br /&gt;&lt;br /&gt;Plan B：创新的产品，过硬的品质，客户的体验，不需自我炒作，口碑传万家。&lt;br /&gt;&lt;br /&gt;Plan A：高薪聘请大公司的高管，高标准、高水平、严格按流程管理。&lt;br /&gt;&lt;br /&gt;Plan B：用股票期权激励团队，用激情、梦想、结果导向，自我管理。&lt;br /&gt;&lt;br /&gt;Plan A：有没有利润、赚不赚钱不要紧，只要速度快，故事动人，马上能IPO上市。&lt;br /&gt;&lt;br /&gt;Plan B：不做亏本生意，不去跟风，有现金流、有利润、有增长，就是一桩好生意。&lt;br /&gt;&lt;br /&gt;Plan A：防止竞争的最好方法是专利，消灭竞争的最好办法是收购竞争对手。&lt;br /&gt;&lt;br /&gt;Plan B：防止竞争的最好方法是迅速商用，消灭竞争的最好方法是不断创新。&lt;br /&gt;&lt;br /&gt;Plan A：这商业世界的次序是大鱼吃小鱼，天经地义。&lt;br /&gt;&lt;br /&gt;Plan B：这商业世界的次序是快鱼吃慢鱼，天经地义。&lt;br /&gt;&lt;br /&gt;Plan A：辞掉了高薪的职位去创业，不成功，实在是亏大了，只准成功、不许失败！&lt;br /&gt;&lt;br /&gt;Plan B：辞掉了高薪的职位去创业，是自己的选择，不成功，东山再起、从头再来！&lt;br /&gt;&lt;br /&gt;世界上有多少事情是预先想好的？有多少成功是一帆风顺的？有多少创业公司的Plan A能够得以完满兑现？Plan A是理想的，前提是如果有 钱、如果做大、如果、如果、如果……Plan B是迫不得已的，没有办法的办法，当创业者走到了陷阱的边缘、生死关头，相信都会清醒过来的，因为你别无选 择。&lt;br /&gt;&lt;br /&gt;作者简介：&lt;br /&gt;&lt;br /&gt;查立：乾龙创投合伙人；网易科技名博；曾在ZiffDavis等公司任管理职务；在英国上市公司MotionPoster其亚洲区任CEO。</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/3929787739579917455/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/05/plan-aplan-b.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3929787739579917455'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3929787739579917455'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/05/plan-aplan-b.html' title='创业者的Plan A和Plan B'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-8732250961999230692</id><published>2010-04-27T08:16:00.000-07:00</published><updated>2010-04-27T08:37:20.473-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="compilation forms"/><category scheme="http://www.blogger.com/atom/ns#" term="f60gen access denied"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle forms 10g"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle forms 6i"/><title type='text'>Problème compilation Oracle forms 6i - 10g lors de la migration 11.5.9 à 11.5.10</title><content type='html'>Contexte : &lt;br /&gt;&lt;br /&gt;Après la migration 11.5.10, les spécifiques doivent être ajoutés sur l&#39;écran de facture AR standard (version 11.5.10). &lt;br /&gt;&lt;br /&gt;Etape 1 &gt; Prendre l&#39;écran standard 11.5.10 via FTP&lt;br /&gt;&lt;br /&gt;Etape 2 &gt; le modifier avec Oracle Forms 6i&lt;br /&gt;&lt;br /&gt;Etape 3 &gt; déposer la nouvelle forms sur le serveur dans $AU_TOP/forms/F ou US&lt;br /&gt;&lt;br /&gt;Etape 4 &gt; compiler la forms avec f60gen, mettre le fmx dans $AR_TOP/forms/F ou US&lt;br /&gt;&lt;br /&gt;Problème : &lt;br /&gt;&lt;br /&gt;A l&#39;étape 2, si la forms est déposé dans un répertoire normale &lt;br /&gt;==&gt; impossible de l&#39;ouvrir avec Oracle forms 6i, l&#39;outil plante sans message d&#39;erreur.  Il est possible de l&#39;ouvrir avec Oracle forms 10g mais après on aura un problème de compilation à l&#39;étape 4 f60gen : message d&#39;erreur ACCESS DENIED.&lt;br /&gt;&lt;br /&gt;Solution :&lt;br /&gt;&lt;br /&gt;Mettre le forms standard dans un répertoire local. Avant de l&#39;ouvrir, il faut télécharger toutes les forms standard de $AU_TOP/forms/F ou US et les mettre dans le même répertoire. Une fois toutes les forms téléchargées, on pourra ouvrir cette forms avec 6i puis la modifier. La forms modifiée sera compilée sans problème à l&#39;étape 4 sur le serveur Unix.</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/8732250961999230692/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/04/probleme-compilation-oracle-forms-6i.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/8732250961999230692'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/8732250961999230692'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/04/probleme-compilation-oracle-forms-6i.html' title='Problème compilation Oracle forms 6i - 10g lors de la migration 11.5.9 à 11.5.10'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-2219198933941671732</id><published>2010-04-23T07:08:00.000-07:00</published><updated>2010-04-23T07:09:29.049-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="VAProxyD.dll"/><title type='text'>VAProxyD.dll 导致的IE内核的浏览器崩溃的解决办法</title><content type='html'>今晚RP小爆发，偶的浏览器不幸崩溃了。&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;好久以前就卸掉了Firefox，只留了IE和Maxthon，两个都是IE内核的，所以这次都给挂了。&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;花了将近一个小时查毒+调试+卸载，最后终于弄好了。估计在国外看PPLIVE的人不少，so方法发上来，大家备用吧。&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;现在回头想想，原因应该是今晚卸载的一个UUSEE插件。之后在打开一个视频网页的时候，浏览器就崩溃了。只不过当时是在新标签里打开视频，所以只是新标签崩溃，浏览器中其他非视频网页仍然正常运行。&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;当浏览器彻底关闭以后，再次打开时，错误信息就弹出来了：&lt;br /&gt;&lt;br /&gt;程序无法正常启动。&lt;br /&gt;&lt;br /&gt;点击详细信息的话，信息如下：&lt;br /&gt;&lt;br /&gt;问题签名:&lt;br /&gt;  问题事件名称: APPCRASH&lt;br /&gt;  应用程序名: iexplore.exe&lt;br /&gt;  应用程序版本: 8.0.6001.18904&lt;br /&gt;  应用程序时间戳: 4b835fec&lt;br /&gt;  故障模块名称: VAProxyD.dll&lt;br /&gt;  故障模块版本: 1.0.0.50&lt;br /&gt;  故障模块时间戳: 4bcfe868&lt;br /&gt;  异常代码: c0000005&lt;br /&gt;  异常偏移量: 0000a8bd&lt;br /&gt;  OS 版本: 6.0.6001.2.1.0.768.3&lt;br /&gt;  区域设置 ID: 2052&lt;br /&gt;  其他信息 1: fd00&lt;br /&gt;  其他信息 2: ea6f5fe8924aaa756324d57f87834160&lt;br /&gt;  其他信息 3: fd00&lt;br /&gt;  其他信息 4: ea6f5fe8924aaa756324d57f87834160&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;第一感觉就是RP爆发，病毒来了。一边祝福着360的全体人员的老母，一边无奈的打开360查杀（一时半会儿也没别的，唉）。&lt;br /&gt;&lt;br /&gt;与此同时，一颗红心，两手准备。我感觉也说不定是IE的哪个插件设置变了，于是右键IE，通过属性进入加载项，看来看去也没找到陌生的插件，只好放弃。&lt;br /&gt;&lt;br /&gt;继续等待漫长的查毒，忽然想起了刚才删除的UUSEE的插件。说不定删这个的时候，把它用到的其他的视频软件的插件需要的component也顺带删掉了。。。事已至此，只好闭上眼睛试了（反正我也没装太多的视频插件）。第一个删掉的就是PPLIVE的加速器。删掉之后，重新打开浏览器，BINGO！可以用了！&lt;br /&gt;&lt;br /&gt; &lt;br /&gt;&lt;br /&gt;这次漏洞最不方便的地方就是出问题之后，所有的浏览器（IE内核的）都无法打开了。所以就不能上网找解决方案+下载其他内核浏览器，而且浏览器崩溃的错误信息给的很不明确，让人无从下手。其实这倒也不能怪微软了，如果它这样开放IE内核视频interface的话，势必会造成插件管理和兼容的混乱。对我们用户来说，在浏览器提供更丰富功能的前提下，适当的小崩溃就一笑而过吧。。。</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/2219198933941671732/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/04/vaproxyddll-ie.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/2219198933941671732'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/2219198933941671732'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/04/vaproxyddll-ie.html' title='VAProxyD.dll 导致的IE内核的浏览器崩溃的解决办法'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-1344854233648062868</id><published>2010-03-29T03:29:00.000-07:00</published><updated>2010-03-29T03:40:21.474-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="SQL Loader，ORA-01722"/><title type='text'>SQL Loader fichier CTL 不可理解的ORA-01722: Nombre non valide</title><content type='html'>Loader文件如下：&lt;br /&gt;&lt;br /&gt;LOAD DATA&lt;br /&gt;APPEND&lt;br /&gt;INTO TABLE SE_KN_HEADERS&lt;br /&gt;FIELDS TERMINATED BY &#39;;&#39;&lt;br /&gt;(&lt;br /&gt;  NOKN,&lt;br /&gt;  NOEXP,&lt;br /&gt;  MODEXP,&lt;br /&gt;  LOCATION,&lt;br /&gt;  COUNTRY,&lt;br /&gt;  IATA_CODE,&lt;br /&gt;  AIRPORT,&lt;br /&gt;  AWB_NUMBER,&lt;br /&gt;  FLIGHT,&lt;br /&gt;  DEPART_DATE    &quot;to_date(:DEPART_DATE,&#39;DDMMYYYY&#39;)&quot;,&lt;br /&gt;  DEPART_TIME    &quot;to_date(:DEPART_TIME,&#39;HH24MI&#39;)&quot;,&lt;br /&gt;  ARR_DATE       &quot;to_date(:ARR_DATE,&#39;DDMMYYYY&#39;)&quot;,&lt;br /&gt;  ARR_TIME       &quot;to_date(:ARR_TIME,&#39;HH24MI&#39;)&quot;,&lt;br /&gt;  INVOICE_NUM,&lt;br /&gt;  INVOICE_AMOUNT &quot;to_number(:INVOICE_AMOUNT,&#39;9999999999.99&#39;)&quot;,&lt;br /&gt;  CURRENCY,&lt;br /&gt;  INVOICE_DATE   &quot;to_date(:INVOICE_DATE,&#39;DDMMYYYY&#39;)&quot;,&lt;br /&gt;  POD_DATE       &quot;to_date(:POD_DATE,&#39;DDMMYYYY&#39;)&quot;,&lt;br /&gt;  POD_TIME       &quot;to_date(:POD_TIME,&#39;HH24MI&#39;)&quot;,&lt;br /&gt;  POD_SIGN,&lt;br /&gt;  SHIPMENT_WEIGHT,&lt;br /&gt;  NUMLOT         &quot;to_number(:NUMLOT,&#39;99999999&#39;)&quot;&lt;br /&gt;)&lt;br /&gt;&lt;br /&gt;测试的输入文件如下：&lt;br /&gt;&lt;br /&gt;“123456;CCH001;ME;Marseille;France;IATA_CCH;MP2;AWB_CCH;F0123;29032010;1157;29032010;1800;CCH-INV-001;90;EUR;29032010;30032010;0900;SIGNE_CCH;SHIPMENT_CCH;100&lt;br /&gt;&lt;br /&gt;”&lt;br /&gt;&lt;br /&gt;在Oracle中运行后程序以warning结束，错误信息如下：&lt;br /&gt;&lt;br /&gt;Enregistrement 1 : Rejeté - Erreur sur table &quot;SE&quot;.&quot;SE_KN_HEADERS&quot;, colonne NUMLOT. ORA-01722: Nombre non valide&lt;br /&gt;&lt;br /&gt;分析：&lt;br /&gt;文本文件中的NUMLOT一列是100，明明是Nombre，为什么会显示Nombre non valide呢？&lt;br /&gt;问题在于csv文件中看不到的最后一个字符：回车。&lt;br /&gt;文本中有两行，一行数据，另外一个是空行。就是这个空行和第一行最后一列里的数据连了起来，导致loader不能正确识别数字。&lt;br /&gt;另外，如果分割符标错了的话（应该用‘；’分割，结果在某一数字列后用了‘，’，于是数字列就和后边的列合并了），一样也会出现这样的错误。</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/1344854233648062868/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/sql-loader-fichier-ctl-ora-01722-nombre.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/1344854233648062868'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/1344854233648062868'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/sql-loader-fichier-ctl-ora-01722-nombre.html' title='SQL Loader fichier CTL 不可理解的ORA-01722: Nombre non valide'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-5371180441966084797</id><published>2010-03-26T08:32:00.000-07:00</published><updated>2010-04-30T07:54:14.159-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="commande"/><category scheme="http://www.blogger.com/atom/ns#" term="Expédition"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle applications"/><category scheme="http://www.blogger.com/atom/ns#" term="Réception"/><title type='text'>Vérification des réceptions/expéditions pour une commande en PL/SQL dans Oracle applications</title><content type='html'>Pour vérifier les réceptions:&lt;br /&gt;&lt;br /&gt;SELECT mtl.transaction_date DATE_MVT,&lt;br /&gt;       mtl.transaction_quantity QTE_RECUE,&lt;br /&gt;       rsh.receipt_num &quot;Receipt&quot;,&lt;br /&gt;       po_h.segment1 &quot;PO&quot;&lt;br /&gt; FROM  rcv_transactions rcv,&lt;br /&gt;       po_distributions_all po_pod,&lt;br /&gt;       po_lines_all po_l,&lt;br /&gt;       po_headers_all po_h,&lt;br /&gt;       rcv_shipment_headers rsh,&lt;br /&gt;       mtl_material_transactions mtl&lt;br /&gt;WHERE  1=1&lt;br /&gt;  AND  rcv.po_line_id = po_pod.po_line_id&lt;br /&gt;  AND  rcv.po_header_id = po_pod.po_header_id&lt;br /&gt;  AND  po_pod.po_line_id = po_l.po_line_id&lt;br /&gt;  AND  po_pod.po_header_id = po_l.po_header_id&lt;br /&gt;  AND  mtl.rcv_transaction_id = rcv.transaction_id&lt;br /&gt;  AND   po_l.org_id = po_h.org_id&lt;br /&gt;  AND   po_l.po_header_id = po_h.po_header_id&lt;br /&gt;  AND   rcv.shipment_header_id = rsh.shipment_header_id&lt;br /&gt;  AND   po_h.segment1 = &#39;99750&#39;; -- PO to check&lt;br /&gt;&lt;br /&gt;Pour vérifier les expéditions (requête spécifique qui n&#39;est utilisable que chez un client ;-)):&lt;br /&gt;&lt;br /&gt;SELECT sel.*&lt;br /&gt;  FROM se_exped_lines sel, po_lines_all pla, po_headers_all pha&lt;br /&gt; WHERE sel.cmde_line_num = pla.po_line_id&lt;br /&gt;   AND pla.po_header_id = pha.po_header_id&lt;br /&gt;   AND pha.segment1 = &#39;102575&#39;; -- Numéro de commande</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/5371180441966084797/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/verification-des-receptionsexpeditions.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/5371180441966084797'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/5371180441966084797'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/verification-des-receptionsexpeditions.html' title='Vérification des réceptions/expéditions pour une commande en PL/SQL dans Oracle applications'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-3276374686067398541</id><published>2010-03-24T04:08:00.000-07:00</published><updated>2010-03-25T07:13:50.185-07:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Download"/><category scheme="http://www.blogger.com/atom/ns#" term="FNDLOAD"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle applications"/><category scheme="http://www.blogger.com/atom/ns#" term="Upload"/><title type='text'>Oracle Applications中经常用到的FNDLOAD指令</title><content type='html'>1 - Jeu de valeur / Value Set&lt;br /&gt;&lt;br /&gt;Download:&lt;br /&gt;FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct CHA-ICS-XXXX.ldt VALUE_SET FLEX_VALUE_SET_NAME=&quot;CHA-ICS-XXXX&quot;&lt;br /&gt;&lt;br /&gt;Upload:&lt;br /&gt;FNDLOAD apps/apps O Y UPLOAD $FND_TOP/patch/115/import/afffload.lct CHA-ICS-XXXX.ldt&lt;br /&gt;&lt;br /&gt;2 - Champs Utilisateurs Flexibles / Descriptive Flex field&lt;br /&gt;&lt;br /&gt;Download:&lt;br /&gt;FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afffload.lct SE_DFF_HR_LOCATIONS.ldt DESC_FLEX APPLICATION_SHORT_NAME=PER DESCRIPTIVE_FLEXFIELD_NAME=&#39;HR_LOCATIONS&#39;&lt;br /&gt;&lt;br /&gt;APPLICATION_SHORT_NAME 和DESCRIPTIVE_FLEXFIELD_NAME都可以在设置界面的Diagnostic-&gt;Examin里找到。&lt;br /&gt;&lt;br /&gt;Upload:&lt;br /&gt;FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afffload.lct SE_DFF_HR_LOCATIONS.ldt&lt;br /&gt;&lt;br /&gt;3 - Traitement simultané / Concurrent program&lt;br /&gt;&lt;br /&gt;Download:&lt;br /&gt;FNDLOAD apps/apps 0 Y DOWNLOAD $FND_TOP/patch/115/import/afcpprog.lct SE_XXXX.ldt PROGRAM CONCURRENT_PROGRAM_NAME=&#39;SE_XXXX&lt;br /&gt;&lt;br /&gt;Upload:&lt;br /&gt;FNDLOAD apps/apps 0 Y UPLOAD $FND_TOP/patch/115/import/afcpprog.lct SE_XXXX.ldt&lt;br /&gt;&lt;br /&gt;4 - Jeu de traitements / Request Sets&lt;br /&gt;&lt;br /&gt;Download:&lt;br /&gt;FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct SE_XXXX.ldt REQ_SET REQUEST_SET_NAME=&#39;SE_XXXX&#39;&lt;br /&gt;&lt;br /&gt;Upload:&lt;br /&gt;FNDLOAD apps/apps O Y UPLOAD $FND_TOP/patch/115/import/afcprset.lct SE_XXXX.ldt&lt;br /&gt;&lt;br /&gt;5 - Lien dans jeu de traitements / Request Sets Link&lt;br /&gt;&lt;br /&gt;Download:&lt;br /&gt;FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcprset.lct SE_XXXX_LINK.ldt REQ_SET_LINKS REQUEST_SET_NAME=&#39;SE_XXXX&#39;&lt;br /&gt;&lt;br /&gt;Upload:&lt;br /&gt;FNDLOAD apps/apps O Y UPLOAD $FND_TOP/patch/115/import/afcprset.lct SE_XXXX_LINK.ldt&lt;br /&gt;&lt;br /&gt;6- Groupe de traitement / Request Group&lt;br /&gt;&lt;br /&gt;Download:&lt;br /&gt;FNDLOAD apps/apps O Y DOWNLOAD $FND_TOP/patch/115/import/afcpreqg.lct All_Reports.ldt REQUEST_GROUP REQUEST_GROUP_NAME=&quot;All Reports&quot; APPLICATION_SHORT_NAME=&quot;PO&quot;&lt;br /&gt;&lt;br /&gt;下载之后，所有All Reports Group和Oracle Purchasing Application的concurrent request都会被下载下来。如果希望将所有requests全部传到新的base上的话，直接上传即可。&lt;br /&gt;若希望只上传某一个request，则需要打开ldt文件，将其它的request删除，只保留需要上传的request。&lt;br /&gt;&lt;br /&gt;Upload:&lt;br /&gt;FNDLOAD apps/apps O Y UPLOAD $FND_TOP/patch/115/import/afcpreqg.lct All_Reports.ldt</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/3276374686067398541/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/oracle-applicationsfndload.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3276374686067398541'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3276374686067398541'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/oracle-applicationsfndload.html' title='Oracle Applications中经常用到的FNDLOAD指令'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-369912035405680442</id><published>2010-03-05T06:38:00.000-08:00</published><updated>2010-03-05T08:57:27.219-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="nom de colonne ambigu dans liste de sélection"/><category scheme="http://www.blogger.com/atom/ns#" term="Oebs"/><category scheme="http://www.blogger.com/atom/ns#" term="ORA-00960"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle"/><title type='text'>ORA-00960: nom de colonne ambigu dans liste de sélection 解决办法</title><content type='html'>程序报错：ORA-00960: nom de colonne ambigu dans liste de sélection&lt;br /&gt;&lt;br /&gt;原因：&lt;br /&gt;&lt;br /&gt;这是因为在source中使用了类似于select &lt;span style=&quot;font-weight: bold;&quot;&gt;A&lt;/span&gt;，B，C，&lt;span style=&quot;font-weight: bold;&quot;&gt;A&lt;/span&gt; from TEST之类的语句。Oracle不允许在select里出现两次同一列的名称。&lt;br /&gt;&lt;br /&gt;在这种情况下，只需要为第二次呼叫的列名添加一个alias就可以了：select &lt;span style=&quot;font-weight: bold;&quot;&gt;A&lt;/span&gt;，B，C，&lt;span style=&quot;font-weight: bold;&quot;&gt;A “D”&lt;/span&gt; from TEST</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/369912035405680442/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/ora-00960-nom-de-colonne-ambigu-dans.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/369912035405680442'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/369912035405680442'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/ora-00960-nom-de-colonne-ambigu-dans.html' title='ORA-00960: nom de colonne ambigu dans liste de sélection 解决办法'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1061062602867709175.post-3653101258115911306</id><published>2010-03-05T06:17:00.000-08:00</published><updated>2010-03-05T08:58:35.444-08:00</updated><category scheme="http://www.blogger.com/atom/ns#" term="Input truncated to * characters"/><category scheme="http://www.blogger.com/atom/ns#" term="Oebs"/><category scheme="http://www.blogger.com/atom/ns#" term="Oracle applications"/><title type='text'>Input truncated to * characters 解决办法</title><content type='html'>&quot;Input truncated to 5 characters&quot; s&#39;affiche dans le fichier de sortie du concurrent programme.&lt;br /&gt;&lt;br /&gt;Cause :&lt;br /&gt;Dans le fichier exécutable sql, à la fin juste après &quot;/&quot; , ajouter un retour chariot, supprimer les espaces inutiles. 在“/”后边如果不是紧接回车的话 就会出现这个信息，不是很mechant，但放到结果里很不好看。</content><link rel='replies' type='application/atom+xml' href='http://ccchuanblog.blogspot.com/feeds/3653101258115911306/comments/default' title='博文评论'/><link rel='replies' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/input-truncated-to-characters.html#comment-form' title='0 条评论'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3653101258115911306'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1061062602867709175/posts/default/3653101258115911306'/><link rel='alternate' type='text/html' href='http://ccchuanblog.blogspot.com/2010/03/input-truncated-to-characters.html' title='Input truncated to * characters 解决办法'/><author><name>ccchuan</name><uri>http://www.blogger.com/profile/12412031470006761145</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='27' height='32' src='//blogger.googleusercontent.com/img/b/R29vZ2xl/AVvXsEgHf6bbFwHL-98vcEIIY75sR3UWgyQ22414hHNmrdQJzYOwlXDE1ZZP3hYprqNdciHLJNi3tkFjiEZvGv1wYSjwKD_fiPo9zV-MKGtFOYmnHNU_MEeJbIY6UEKVTcHtKQ/s220/IMG_9670.JPG'/></author><thr:total>0</thr:total></entry></feed>