Appsutil.zip created with Exceptions
hi
I have been following post patch step 9535311.
In Post steps
While creating appsutill.zip file from application i got exception below
ppltst@ebsdevdb on /ebdbh/app/ebprdappl # $ADPERLPRG $AD_TOP/bin/admkappsutil.pl
Starting the generation of appsutil.zip
Log file located at /ebdbh/app/ebprdappl/admin/log/MakeAppsUtil_06140722.log
output located at /ebdbh/app/ebprdappl/admin/out/appsutil.zip
java.lang.NoClassDefFoundError: java/util/HashMap
at
at oracle.apps.ad.tools.MakeAppsUtil.<init>(Compiled Code)
at oracle.apps.ad.tools.MakeAppsUtil.main(Compiled Code)
Exception in thread "main" MakeAppsUtil completed successfully.
can I ignore above Exception?
Thanks
With Regards
A-Z
Please see these docs.
After Applying Patch 9535311 Get java.lang.NoClassDefFoundError: java/util/HashMap Error [ID 1188327.1]
Creating "appsutl.zip" Failed On "java.lang.NoClassDefFoundError: java/util/HashMap", What is the Potential Solution ? [ID 1310838.1]
Thanks,
Hussein
Similar Messages
-
Zipped files created with Java won't unzip with Java
Hello there,
I have written a class for unzipping a zip file using the 'ZipFile' class. It works perfectly fine when I extract zip files that have been created with XP, Winzip, or Winrar.
I am now experimenting with creating zip files using the ZipOutputStream (http://forum.java.sun.com/thread.jspa?forumID=256&threadID=366550 by author smeee). The code works great for creating the zip file, but when I try and unzip it with the zipfile class mentioned above it throws an exception.
The error that the following code gives me when it tries to convert an element from the enumeration to a ZipEntry is this: java.io.FileNotFoundException: C:\testfiles\out\high\BAUMAN\00001.jpg (The system cannot find the path specified)
NOTE: The file is there by the way!!! :-)
See the code for extracting here:
try {
zippy = new ZipFile(fileName);
Enumeration all = zippy.entries();
while (all.hasMoreElements()) {//loop through all zip entries
getFile((ZipEntry)all.nextElement()); <<<=====FAILS HERE
} catch (IOException err) {
System.err.println(err.toString());
return;
}Now if I extract the zip file with winzip, then rezip it with winzip and run the above method again it works with no errors. Any thoughts. Any help would be greatly appreciated.
JaredHello All,
For anyone else who use the forum posting by smeee as a guide to create a zipper (http://forum.java.sun.com/thread.jspa?forumID=256&threadID=366550 by author smeee).
I was tracing through the code and found that there is a statement that adds 1 character (strSource.length()+1) to the source path. This was causing the following bug:
In windows it was placing objects like this \myfolder\myfile.txt
In unix it was placing objects like this yfolder\myfile.txt
Naturally a path like \myfolder... in the zip index was causing problems. I have added a case statement that tests the OS and then adds two chars if windows to compensate for the 'C:' and does nothing if Unix. The code now runs perfectly on either OS.
Thanks for your response guys!
Jared -
Zip file is created with 0 bytes
In my below code, I am trying to zip a folder containing files and folders. But the zip file is getting created with 0 bytes.
Could anyone please tell me what is wrong in my coding.
private void jButton5ZipActionPerformed(java.awt.event.ActionEvent evt)
File sgm=new File(jTextField1Text);//jTextField1Text is the filename I am selecting from the jTextField
File tempXML=new File(sgm.getParent());
String[] children = tempXML.list();
for(int i=0;i<children.length;i++)
File renamingFile=new File(tempXML,children);
CreateZipFile czf=new CreateZipFile();
try
czf.doCreate(renamingFile);
catch (FileNotFoundException ex)
ex.printStackTrace();
catch (IOException ex)
ex.printStackTrace();
==============================
void doCreate(File dir) throws FileNotFoundException, IOException
String[] filenames=new String[]{dir.toString()};
byte[] buf = new byte[1024];
try
// Create the ZIP file
String outFilename = "C:\\outfile.zip";
ZipOutputStream out = new ZipOutputStream(new FileOutputStream(outFilename));
for (int i=0; i<filenames.length; i++)
FileInputStream in = new FileInputStream(filenames);
// Add ZIP entry to output stream.
out.putNextEntry(new ZipEntry(filenames[i]));
// Transfer bytes from the file to the ZIP file
int len;
while ((len = in.read(buf)) > 0)
out.write(buf, 0, len);
// Complete the entry
out.closeEntry();
in.close();
// Complete the ZIP file
out.close();
catch (IOException e)
Message was edited by:
SimmyIf I give File [] filenames =
dir.listFiles();an error is thrown for the line
out.putNextEntry(new
ZipEntry(filenames)); as
cannot find symbol
symbol: constructor ZipEntry(java.io.File)
location: class java.util.zip.ZipEntry
There's no constructor that accepts a File as argument. There's only this
ZipEntry(String name)
Creates a new zip entry with the specified name.
ZipEntry(ZipEntry e)
Creates a new zip entry with fields taken from the specified zip entry.
Check the API
http://java.sun.com/j2se/1.4.2/docs/api/java/util/zip/ZipEntry.html
regards,
MAnuel Leiria -
Error creating appsutil.zip on RHEL5
Hi all,
I want to configure autoconfig follow link : http://www.in-oracle.com/Oracle-Apps/11i/migrate-autoconfig-DB.php
but I have a problem when create appsutil.zip file. when i run
"$perl $AD_TOP/bin/admkappsutil.pl" i got this error "environment not set. Please source the Applications environment" even i have set application environment by script "$./APPSORA.env" before.
Any idea what am I missing?
Thanks,"$perl $AD_TOP/bin/admkappsutil.pl" i got this error "environment not set. Please source the Applications environment" even i have set application environment by script "$./APPSORA.env" before.
Any idea what am I missing?You are missing sourcing the env file which is mentioned above -- Please run this env file before you issue the perl command.
Thanks,
Hussein -
Unable to create appsutil.zip on apps tier on 11.5.10.2
Hello,
Suddenly, I am not able to crate appsutil.zip. In the log, I did not see any error
Creating /apps2/property/product/trn/appl/admin/out/appsutil.zip after this line there are no error and no lines
in the topUNZIP used: UnZip 5.42 of 14 January 2001, by Info-ZIP. Maintained by C. Spieler. Send
Recursive create directory:.
unzippath="/apps2/property/product/trn/comn/util/unzip/unzip";
I checked my env file unzip is the path. I don;t know where I am missing.
Thanks
Prince
Edited by: user12094010 on Dec 2, 2011 10:45 AMThanks Hussien,
sunOS 5.10
unZip 5.42 of 14 January 2001, by In
property@iwebd2$view /apps2/property/product/trn/appl/admin/log/MakeAppsUtil_12021353.log
"/apps2/property/product/trn/appl/admin/log/MakeAppsUtil_12021353.log" [Read only] 253 lines, 38550 characters
Deleting directory /apps2/property/product/trn/appl/admin/out/appsutil/appsutil
Deletion Successful
UNZIP used: UnZip 5.42 of 14 January 2001, by Info-ZIP. Maintained by C. Spieler. Send
Recursive create directory:
/apps2/property/product/trn/a........................
Binary copy of /apps2/property/product/trn/appl//admin/adgrants.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/adgrants.sql
Binary copy of /apps2/property/product/trn/appl//admin/addb816.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/addb816.sql
Binary copy of /apps2/property/product/trn/appl//admin/addb817.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/addb817.sql
Binary copy of /apps2/property/product/trn/appl//admin/addb901.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/addb901.sql
Binary copy of /apps2/property/product/trn/appl//admin/addb920.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/addb920.sql
Binary copy of /apps2/property/product/trn/appl//admin/addbctx.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/addbctx.sql
Binary copy of /apps2/property/product/trn/appl//admin/addbjava.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/addbjava.sql
Binary copy of /apps2/property/product/trn/appl//admin/addbmisc.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/addbmisc.sql
Binary copy of /apps2/property/product/trn/appl//admin/adjv901.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/adjv901.sql
Binary copy of /apps2/property/product/trn/appl//admin/adjv920.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/adjv920.sql
Binary copy of /apps2/property/product/trn/appl//admin/admsc901.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/admsc901.sql
Binary copy of /apps2/property/product/trn/appl//admin/admsc920.sql to /apps2/property/product/trn/appl/admin/out/appsutil/appsutil/sql/admsc920.sql
Creating /apps2/property/product/trn/appl/admin/out/appsutil.zip
Thanks
Prince -
What is the max size of a zip file with the JDK1.5 ?
Hello everybody,
I'm a french student and for a project, I need to create a zip file, but I don't know in advance the number and the size of files to include in my zip.
I wish to know if someone have the answer to my question : what is the max size of a zip file with the JDK1.5 ? I believe that with the JDK1.3, the limit size of a zip was about 2Go, wasn't ?
Thank you for all answer !
Good day !
PS : sorry for my very poor english ;-)Here is all I have found for the moment :
...Okay, what about my suggestion of creating your own 10GB file?
Try this:import java.io.File;
import java.io.RandomAccessFile;
import java.nio.ByteBuffer;
import java.nio.channels.FileChannel;
import java.util.Random;
class Main {
public static void main(String[] args) {
long start = System.currentTimeMillis();
int mbs = 1024;
writeFile("E:/Temp/data/1GB.dat", mbs);
long end = System.currentTimeMillis();
System.out.println("Done writing "+mbs+" MB's to disk in "+
((end-start)/1000)+" seconds.");
private static void writeFile(String fileName, int numMegaBytes) {
try {
int numBytes = numMegaBytes*1024*1024;
File file = new File(fileName);
FileChannel rwChannel =
new RandomAccessFile(file, "rw").getChannel();
ByteBuffer buffer = rwChannel.map(
FileChannel.MapMode.READ_WRITE, 0, numBytes);
Random rand = new Random();
for(int i = 1; i <= numMegaBytes; i++) {
for(int j = 1; j <= 1024; j++) {
byte[] bytes = new byte[1024];
rand.nextBytes(bytes);
buffer.put(bytes);
rwChannel.close();
} catch(Exception e) {
e.printStackTrace();
}On my machine it took me 43 seconds to create a 1GB file, so it shouldn't take too long to create your own 10GB. Then try zipping that file.
Good luck. -
Tech Stack Validation Patch 4318672 - appsutil.zip issue
I am working on upgrading 11.5.9 - 11.5.10.2. I recently installed rollup patch 8217898. +(Pre-Update step #3)+
The install went successfully, I created the appsutil.zip, moved it to the DB server unpacked everything looked normal. The next step said to install the Technology Stack Validation Patch 4318672. +(Pre-Update step #4)+
I applied the patch, then the next step was to create the appsutil.zip file again. I did and moved it to the DB server. It next asks you to run the TXKScript.pl which runs the technology stack validation utility.
I get the error that the SID_Server.xml file is missing. The file is not in the new appsutil directory created. It was however in the previous one created when I installed 8217898.
I reapplied 8217898 and the appsutil.zip still creates without the SID_Server.xml file as well as a couple directories.
Before:+_
SID_Server.xml
admin
bin
driver
html
install
java
log
media
out
outbound
perl
scripts
sql
template
xml
Now:+_
bin
driver
html
java
media
perl
sql
template
xml
It seems I missed a step, but going back through the instructions I can't seem to find anything. Any ideas?
ThanksI looked through just about every log that I could find actually, mostly trying to figure out what the different patches & process did, where it looked for things, etc. Most of the logs files I read through were located $APPL_TOP/admin/<SID>_<hostname>/log
The actual step that seemed to solve the problem was going through the steps for in Section #8 "Migrating to AutoConfig on the Database Tier" in document 165195.1 Using AutoConfig to Manage System Configurations with Oracle Applications 11i
We were using Autoconfig already so I am not sure exactly why that had to be done, but it re-created everything I needed.
But on a positive note as I have been going through each step of this process I have been learning quite a bit about where all these files live and how they interact.
Looking for how to verify in SIGNON_PASSWORD_HARD_TO_GUESS is set to N as required. I have been through all the documents listed, and they say what it is and what it does but I can't seem to find the screen in the application that has it defined. I know that it is N already because we can use passwords that are not complex, but I just wanted to dig through and see it and figure where all that side of things lives.
Thanks again for your help -
Zip created through java.util.zip but problem in windows XP compress folder
Hi friends,
I am a software developer ,working on java/j2ee.currently i am working in a document management software related to logistics.Here i am facing a problem at the time of open the zip file through windows XP's in built software called "Folder compress".It's creared through java.util.zip.zipoutputstream.but at time of open through xp compress folder software ,it's showing error that "you can't open this file , this file are protected for your computer security" , but when i trying to open it through winzip or winrar, it's not giving any problem.My also specefing the code snippet below :-
ZipOutputStream zip = null;
FileOutputStream fileWriter = null;
try
fileWriter = new FileOutputStream(destZipFile);
zip = new ZipOutputStream(fileWriter);
//required for XP compress
zip.setMethod(ZipOutputStream.DEFLATED);
zip.setLevel(Deflater.DEFAULT_COMPRESSION); //use default level
}catch (Exception ex){
ex.printStackTrace();
System.exit(0);
addFolderToZip("", srcFolder, zip);
try
zip.flush();
zip.close();
zip=null;
fileWriter.close();
fileWriter = null;
}catch (Exception ex)
//ex.printStackTrace();
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in Zip folder processing");
}I desperately looking for a help regarding this issue , if any body have any solution the please send at this forum.
Thanks,
Chiranjitthis file working file for winzip or winrar there is no problem.i am also sending the whole code of that java file that can help you better.
Program Name: EdocRetrieveServiceSLBean.java
Description: EdocRetrieveService CMP Bean Class
Classes: EdocRetrieveServiceSLBean
Package: net.mlog.edoc.ejb.entity
Modification History
<CR No> <Date> <Modified By> <Comments>
Version 1.0 2005.12.01 Sutapa Ray Create
/** The sequence of methods to be called.
===============================================================================================================================
1. mlogOriginDocumentAudit(String argActionDetails,int argDocumentId,int argActionId,String argActionByUserId)
2. mlogDestinationBatchDownload(Vector TREEDATA,String SessionIDVal,String argUserId)
a) Start DIR --
private String DoFolder(String folderNname)
b) Create the folder
private String CreateFolder(String FolderName,String newFolderPath)
c) Zip the folder
private void zipFolder(String srcFolder, String destZipFile)
d) Add folders to zip file
private void addToZip(String path, String srcFile, ZipOutputStream zip)
e) Add the srcFolder to the zip stream.
private void addFolderToZip(String path, String srcFolder, ZipOutputStream zip)
f) Delete Directory from server
public boolean deleteDir(File dir) {
3. mpsDocumentView(String argUserId,Integer[] argSfxFileId)
4. mlogOriginDocumentView(int argDocumentId,String argUserId)
5. findDocTypeForDocId(Integer argDocId) throws RemoteException;
package net.mlog.edoc.ejb.session;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import javax.ejb.CreateException;
import javax.ejb.ObjectNotFoundException;
import javax.ejb.FinderException;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.naming.Context;
import javax.rmi.PortableRemoteObject;
import java.rmi.RemoteException;
//import lib for all entity beans
import net.mlog.edoc.ejb.entity.IDocumentCMP;
import net.mlog.edoc.ejb.entity.IDocumentCMPHome;
import net.mlog.edoc.ejb.entity.IDocumentTypeCMP;
import net.mlog.edoc.ejb.entity.IDocumentTypeCMPHome;
import net.mlog.edoc.ejb.entity.IDocumentAuditCMP;
import net.mlog.edoc.ejb.entity.IDocumentAuditCMPHome;
//import lib for reader class of properties file
import net.mlog.edoc.ejb.session.PropertiesFileReader;
//import lib for user Define File class
import net.mlog.edoc.ejb.Session.EFile;
//import lib for SFXWebClient
import net.mlog.edoc.webservice.sfxWeb.ISFXWebClientSLHome;
import net.mlog.edoc.webservice.sfxWeb.ISFXWebClientSL;
import java.sql.Date;
import java.sql.Timestamp;
import java.text.SimpleDateFormat;
import java.util.zip.ZipEntry;
import java.util.zip.ZipOutputStream;
import java.util.zip.Deflater;
import java.util.Vector;
import java.util.Iterator;
import java.util.Collection;
import java.util.StringTokenizer;
import java.util.Enumeration;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import java.io.File;
import java.io.InputStream;
import java.io.IOException;
import java.io.FileInputStream;
import java.io.FileOutputStream;
//import lib for NGP Mail
import javax.jms.Queue;
import javax.jms.QueueConnectionFactory;
import javax.jms.QueueConnection;
import javax.jms.QueueSender;
import javax.jms.QueueSession;
import javax.jms.JMSException;
import weblogic.jms.extensions.WLQueueSession;
import weblogic.jms.extensions.XMLMessage;
//import javax.mail.*;
//import javax.mail.internet.*;
//import lib for USI
import com.msl.security.USIException;
import com.msl.security.USIServerAPI;
import com.msl.security.UserPolicyData;
import net.msl.util.logging.MLogger;
public class EdocRetrieveServiceSLBean implements SessionBean {
private static final boolean VERBOSE = true;
private SessionContext ctx;
public void ejbActivate() {
public void ejbRemove() {
public void ejbPassivate() {
public void setSessionContext(SessionContext ctx) {
this.ctx = ctx;
public void ejbCreate () throws CreateException {
private static final MLogger logger;
static
logger = MLogger.getLogger(net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.class.getName(), "net/mlog/edoc/ejb/session/eDocRetrieveServiceMessagesXML");
//*********************KEEPING AUDITS OF DOCUMENTS BY MLOG ORIGIN PEOPLE*******************************
* <b>
* Used for Auditing the user action.
* </b>
* This function is called from various functions of eDocController
* <p>
* @param argActionDetails Gives the details of Action in document audit.
* @param argDocumentId gives the Document Id in Document Audit.
* @param argActionId Action Id in Document Audit.
* @param argActionByUserId User Id of the Docment Audit action.
* @return Returns a boolean value. 1 for success, 0 for Failure.
public boolean mlogOriginDocumentAudit(String argActionDetails,int argDocumentId,int argActionId,String argActionByUserId) throws RemoteException
//NGP/JDK Logging
boolean flag=false;
try{
//getting context of the server
InitialContext documentAuditCMPInitialContext=getInitialContext();
Object objDocumentAuditCMPRef=null;
try{
objDocumentAuditCMPRef=documentAuditCMPInitialContext.lookup("DocumentAuditCMPBeanJNDI");
catch(Exception e)
//NGP/JDK Logging if JNDI Not found
//logger.log(Level.SEVERE, "{0} : JNDI not found : {1}",new Object[] {"MSG002","DocumentAuditCMPBeanJNDI"});
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.JNDINotFound","DocumentAuditCMPBeanJNDI not found");
//find the maximum audit id in the Document_Audit table
//Home interface reference of DocumentAuditCMP EJB
//IDocumentAuditCMPHome iDocumentAuditCMPHomeRef=(IDocumentAuditCMPHome)PortableRemoteObject.narrow(objDocumentAuditCMPRef,IDocumentAuditCMPHome.class);
IDocumentAuditCMPHome iDocumentAuditCMPHomeRef=(IDocumentAuditCMPHome)objDocumentAuditCMPRef;
//Remote interface reference of DocumentAuditCMP EJB
IDocumentAuditCMP iDocumentAuditCMPCreateRef=iDocumentAuditCMPHomeRef.create(new Timestamp(System.currentTimeMillis()),argActionDetails,argActionByUserId,new Integer(argActionId),new Integer(argDocumentId));
//set flag to true if Document is audited
flag=true;
}//end of try
catch(Exception expt)
//logger.finer(expt);
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.CreateException","Exception in creating Document Audit record");
return flag;
//*********************BATCH DOWNLOAD OF DOCUMENTS BY MLOG ORIGIN PEOPLE*******************************
* <b>
* Used for Validating the documents.
* </b>
* This function is called from Struts
* <p>
* @param TREEDATA Treeset obtained after search.
* @param SessionIDVal gives the Session Value Id.
* @return Returns a boolean value. 1 for success, 0 for Failure.
public byte[] mlogDestinationBatchDownload(Vector TREEDATA,String SessionIDVal,String argUserId) throws RemoteException
//NGP/JDK Logging
/*FileHandler handler = null;
Logger logger=null;
try
PropertiesFileReader propertiesFileReaderRef=new PropertiesFileReader();
String logFile=propertiesFileReaderRef.getProperties("/edoc.properties","EDOC_LOG");
handler = new FileHandler("eDoc.log",0,1, true);
logger = Logger.getLogger("ErrorMsg");
logger.addHandler(handler);
logger.setLevel(Level.ALL);
}catch(Exception excp)
NGP/JDK Logging warning
logger.log(Level.WARNING, "{0} : Unable to find Resource Bundle File : {1}",new Object[] {"MSG001","ErrorMsg"});
//Remote interface reference of SFXWebClientSL
ISFXWebClientSL iSFXWebClientSLRef=null;
//Home interface reference of SFXWebClientSL
ISFXWebClientSLHome iSFXWebClientSLHomeRef=null;
Vector filePath=new Vector();
byte[] fileContent=null;
String eDocRoot="";
String eDocPathMain="";
String eDocPath="";
File tempRootFileforDelete = null;
if (TREEDATA.capacity() != 0 )
String BLNODirPath="";
String PONODirPath="";
String SONODirPath="";
// added for doc type level--2005.11.27--samar
String docTypeDirPath="";
String filepath="";
try
PropertiesFileReader propertiesFileReaderRef=new PropertiesFileReader();
filepath=propertiesFileReaderRef.getProperties("/edoc.properties","TEMP_FILE_DIR");
logger.finer("File Path:" +filepath);
}catch(Exception excp)
excp.printStackTrace();
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.IOException","TEMP_FILE_DIR property (edoc.properties) not found");
eDocRoot=CreateFolder("eDocTemp",filepath+File.separator);
// added for top level--2005.12.02--samar
//eDocRoot=CreateFolder("eDocTemp",System.getProperty("user.home")+File.separator);
//eDocPath=CreateFolder(SessionIDVal,eDocRoot+File.separator);
Enumeration TREEDATAEn = TREEDATA.elements(); //Setting The Tree Folder
String BLNO="";
String PONO="";
String SONO="";
String DNO ="";
while(TREEDATAEn.hasMoreElements())
StringTokenizer st = new StringTokenizer((TREEDATAEn.nextElement()).toString(),"_");
while (st.hasMoreTokens()) // Extract All the Fields Of Every Vector Element
BLNO = st.nextToken(); // CSBWNO
PONO = st.nextToken(); // PONO
SONO = st.nextToken(); // SONO
DNO = st.nextToken(); // DNO
eDocPathMain=CreateFolder(SessionIDVal,eDocRoot+File.separator);
eDocPath=CreateFolder("eDoc",eDocPathMain+File.separator);
BLNODirPath = CreateFolder(BLNO,eDocPath+File.separator);
PONODirPath = CreateFolder(PONO,BLNODirPath+File.separator);
SONODirPath = CreateFolder(SONO,PONODirPath+File.separator);
// added for doc type level--2005.11.27--samar
docTypeDirPath=CreateFolder(findDocTypeForDocId(new Integer(DNO)),SONODirPath+File.separator);
File tempRootFile=new File(eDocRoot);
tempRootFile.canWrite();
filePath.add(tempRootFile.getParent());
tempRootFileforDelete = tempRootFile;
//File tempeDocPathMainFile=new File(eDocPathMain);
//filePath.add(tempeDocPathMainFile.getParent());
//2005-12-01::code change for top level directory deletion
//File tempFile=new File(eDocPath);//BLNODirPath);
//filePath.add(tempFile.getParent());
filePath.add(eDocPathMain);
filePath.add(eDocPath);
filePath.add(BLNODirPath);
filePath.add(PONODirPath);
filePath.add(SONODirPath);
// added for doc type level--2005.11.27--samar
filePath.add(docTypeDirPath);
/* Access The Data from DataBase Temp Storage with Document Id And Store In This SO Folder */
/*Long Raw*/
try
InitialContext initialContext=new InitialContext();
int sfxid=0;
/*DriverManager.registerDriver (new oracle.jdbc.OracleDriver());
OraclePooledConnection pc = new OraclePooledConnection("jdbc:oracle:thin:hr/hr@essoraclesvr:1521:essorcl","edoc","edoc");
Connection con=new DBCon().Connect();//pc.getConnection();
PreparedStatement pstm=con.prepareStatement("select SFX_FILE_ID from DOCUMENT where DOCUMENT_ID=?");
//getting context of the server
InitialContext documentCMPInitialContext=getInitialContext();
Object objDocumentCMPRef=null;
try{
objDocumentCMPRef=documentCMPInitialContext.lookup("DocumentCMPBeanJNDI");
catch(Exception e)
//logger.log(Level.SEVERE, "{0} : JNDI not found : {1}",new Object[] {"MSG002","DocumentCMPBeanJNDI"});
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.JNDINotFound","DocumentCMPBeanJNDI not found");
//Home interface reference of DocumentCMP EJB
//IDocumentCMPHome iDocumentCMPHomeRef=(IDocumentCMPHome)PortableRemoteObject.narrow(objDocumentCMPRef,IDocumentCMPHome.class);
IDocumentCMPHome iDocumentCMPHomeRef=(IDocumentCMPHome)objDocumentCMPRef;
IDocumentCMP documentCMPRef=null;
//Remote interface reference of DocumentCMP EJB
try{
documentCMPRef=iDocumentCMPHomeRef.findByPrimaryKey(new Integer(DNO));
catch(Exception e)
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ObjectNotFound","Document Id not found");
/*pstm.setInt(1,Integer.parseInt(DNO));
ResultSet rs1=pstm.executeQuery();
if(rs1.next()){
sfxid=rs1.getInt(1);
sfxid=documentCMPRef.getSfxFileId().intValue();
logger.finer("sfxid==="+sfxid);
String strFile=documentCMPRef.getDocumentName().toString();
//SFX lookup
//InitialContext initialContext=new InitialContext();
Object sfxWebClient=null;
try{
sfxWebClient=initialContext.lookup("SFXWebClientJNDI");
catch(Exception e)
//NGP/JDK logging if JNDI not found
//logger.log(Level.SEVERE, "{0} : JNDI not found : {1}",new Object[] {"MSG002","SFXWebClientJNDI"});
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.JNDINotFound","SFXWebClientJNDI not found");
iSFXWebClientSLHomeRef=(ISFXWebClientSLHome)PortableRemoteObject.narrow(sfxWebClient,ISFXWebClientSLHome.class);
iSFXWebClientSLRef=iSFXWebClientSLHomeRef.create();//SFXWebClient reference creation
if(iSFXWebClientSLRef!=null)
//logger.finer("ffffffff---");
int arrSFXFileId[]=new int[1];
arrSFXFileId[0]=sfxid;
Object objEFile[]=iSFXWebClientSLRef.retrieveDocument(argUserId,arrSFXFileId);
if(objEFile.length>0)
byte b[]=(byte[])objEFile[1];
String f=strFile.substring(strFile.lastIndexOf(File.separator)+1,strFile.length());
// changed(instead of SONODirPath now docTypeDirPath) for doc type level--2005.11.27--samar
FileOutputStream fout=new FileOutputStream(docTypeDirPath+File.separator + f);
//logger.finer("SONODirPath+File.separator + f---"+SONODirPath+File.separator + f);
filePath.add(docTypeDirPath+File.separator + f);
int j;
for(j=0;j<b.length;j++)
fout.write(b[j]);
fout.close();
//for auditing the document
//logger.finer("Document download audited");
boolean flagAudit=mlogOriginDocumentAudit("Document has been downloaded",Integer.parseInt(DNO),5,argUserId);
//logger.finer("Audit complete"+flagAudit);
if(logger.isFinerLoggable()) {
logger.finer("Audit complete"+flagAudit);
//Delete after finish
tempRootFile.delete();
}catch(Exception e)
//e.printStackTrace();
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in Folder creation processing");
/* End Long Raw */
}// end of while hasMoreTokens
}// end of while hasMoreElements
}else{ }
/* Zip */
try
zipFolder(eDocPath+File.separator,eDocPath+".zip");
}catch(Exception excp)
////logger.finer(excp.toString());
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in Zip processing");
// send the byte array for the file
String fileName=eDocPath+".zip";
try{
File file=new File(fileName);
InputStream is = new FileInputStream(file);
// Get the size of the file
long length = file.length();
// You cannot create an array using a long type.It needs to be an int type.
// Before converting to an int type,check to ensure that file is not larger than Integer.MAX_VALUE.
//Kept for future requirement if any
if (length > Integer.MAX_VALUE) {
// File is too large
// Create the byte array to hold the data
fileContent = new byte[(int)length];
// Read in the bytes
int offset = 0;
int numRead = 0;
while (offset < fileContent.length
&& (numRead=is.read(fileContent, offset, fileContent.length-offset)) >= 0) {
offset += numRead;
// Ensure all the bytes have been read in
if (offset < fileContent.length) {
throw new IOException("Could not completely read file "+file.getName());
// Close the input stream and return bytes
is.close();
}catch(Exception e){
deleteDir(tempRootFileforDelete);
//trying for deleting folder and zip file
File file=new File(fileName);
if(file.exists())
file.delete();
//logger.finer("File Deleted successfully");
if(file.exists()){
//logger.finer("File Not Deleted ");
/* File FileToDelete = new File(eDocPath+".zip");
boolean DelStatus1 = deleteDir(FileToDelete);
//logger.finer("Deletion 1:"+DelStatus1 );
File FolderToDelete = new File(eDocPath);
boolean DelStatus2 = deleteDir(FolderToDelete);
//logger.finer("Deletion 2:"+DelStatus2);
for(int index=filePath.size()-1;index>=0;index--)
File delFile=new File(filePath.elementAt(index).toString());
//logger.finer(delFile.getAbsolutePath());
if(delFile.exists())
//logger.finer("Before delete---123");
//logger.finer("File Deleted========>"+delFile.delete());
//logger.finer("After delete---123");
//logger.finer(delFile.getAbsolutePath()+"-----------"+delFile.exists());
return fileContent;
/* ***************************Start DIR *********************/
private String DoFolder(String folderNname)
File f;
f = new File(folderNname);
f.mkdir(); // Create The Folder
//f.deleteOnExit(); //R n D to Delete The zip folders only */
return(folderNname+File.separator);
//to create the folder
private String CreateFolder(String FolderName,String newFolderPath)
String NewDir ="";
NewDir=newFolderPath + FolderName;
newFolderPath=DoFolder(NewDir);
return(NewDir);
//To zip the folder
private void zipFolder(String srcFolder, String destZipFile)
ZipOutputStream zip = null;
FileOutputStream fileWriter = null;
try
fileWriter = new FileOutputStream(destZipFile);
zip = new ZipOutputStream(fileWriter);
//required for XP compress
zip.setMethod(ZipOutputStream.DEFLATED);
zip.setLevel(Deflater.DEFAULT_COMPRESSION); //use default level
}catch (Exception ex){
ex.printStackTrace();
System.exit(0);
addFolderToZip("", srcFolder, zip);
try
zip.flush();
zip.close();
zip=null;
fileWriter.close();
fileWriter = null;
}catch (Exception ex)
//ex.printStackTrace();
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in Zip folder processing");
// File f2= new File(destZipFile);
* Write the content of srcFile in a new ZipEntry, named path+srcFile,of the zip stream
* The result is that the srcFile will be in the path folder in the generated archive.
* @param path String, the relative path with the root archive.
* @param srcFile String, the absolute path of the file to add
* @param zip ZipOutputStram, the stream to use to write the given file.
//the folders are added to zip file
private void addToZip(String path, String srcFile, ZipOutputStream zip)
File folder = new File(srcFile);
//folder.deleteOnExit();
if (folder.isDirectory()) {
addFolderToZip(path, srcFile, zip);
else {
//Transfer bytes from in to out
byte[] buf = new byte[1024];
int len;
FileInputStream in = null;
try {
in = new FileInputStream(srcFile);
// void putNextEntry(ZipEntry e) Begins writing a new ZIP file entry
// and positions the stream to the start of the entry data.
zip.putNextEntry(new ZipEntry(path +File.separator+ folder.getName()));
while ((len = in.read(buf)) > 0)
zip.write(buf, 0, len);
}catch (Exception ex){
ex.printStackTrace();
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in Adding to Zip Folder");
}finally{
try
//2005-12-01::file pointer close
in.close();
}catch(Exception e){
e.printStackTrace();
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in Adding to Zip Folder");
folder.delete(); //we addedd for DELETE
* add the srcFolder to the zip stream.
* @param path String, the relatif path with the root archive.
* @param srcFile String, the absolute path of the file to add
* @param zip ZipOutputStram, the stream to use to write the given file.
private void addFolderToZip(String path, String srcFolder, ZipOutputStream zip)
File folder = new File(srcFolder);
folder.canWrite();
//folder.deleteOnExit();
String fileListe[] = folder.list();
try
int i = 0;
while (true)
addToZip(path+File.separator+ folder.getName(), srcFolder+File.separator+fileListe, zip);
i++;
}catch (Exception ex)
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in Naming after adding to Zip Folder");
/* $$$$$$$$$$$$$$$$$ End Zipping $$$$$$$$$$$$$$$ */
/****************Start Of Deleting Directory from server***********/
public boolean deleteDir(File dir) {
// to see if this directory is actually a symbolic link to a directory,
// we want to get its canonical path
//- that is, we follow the link to the file it's actually linked to
File candir;
try {
candir = dir.getCanonicalFile();
} catch (IOException e) {
return false;
// a symbolic link has a different canonical path than its actual path,
// unless it's a link to itself
if (!candir.equals(dir.getAbsoluteFile())) {
//this file is a symbolic link, and there's no reason for us to follow it,
//because then we might be deleting something outside of the directory we were told to delete
return false;
// now we go through all of the files and subdirectories in the directory and delete them one by one
File[] files = candir.listFiles();
if (files != null) {
for (int i = 0; i < files.length; i++) {
File file = files[i];
//file read only set false
//in case this directory is actually a symbolic link, or it's empty,
//we want to try to delete the link before we try anything
boolean deleted = file.delete();
if (!deleted) {
// deleting the file failed, so maybe it's a non-empty directory
if (file.isDirectory()) deleteDir(file);
// otherwise, there's nothing else we can do
// now that we tried to clear the directory out, we can try to delete it again
return dir.delete();
/************End Of Deleting Directory *********************/
private InitialContext getInitialContext() throws NamingException {
try {
return new InitialContext();
} catch (NamingException ne) {
//logger.finer("Please make sure that the server is running.");
throw ne;
//*****************************WEB SERVICE FILE RETRIEVE IMPLEMENTATION FOR MPS PEOPLE*************************************************
* <b>
* Used for Retrieval of a document.
* </b>
* This function is called from retrieveDocument function of MPStoEdocWebServiceSLBean.
* <p>
* @param argUserId User Id of the user who wants to retrieve the document
* @param argSfxFileId[] Sfx File Id which gives the reference number of the document(s) in the SFX database.
* @return Returns a one dimentional Object array containing a series of file name and file content of the retrieved documents.
public Object[] mpsDocumentView(String argUserId,Integer[] argSfxFileId) throws RemoteException
//NGP/JDK logging
logger.finer("mpsDocumentView called--");
try{
argUserId=argUserId.toUpperCase();
catch(Exception e)
e.printStackTrace();
logger.finer("mpsDocumentView argSfxFileId[0]--"+argSfxFileId[0]);
Object[] searchResult=null;
/*FileHandler handler = null;
Logger logger=null;
int finalIndex=0;
try
//PropertiesFileReader propertiesFileReaderRef=new PropertiesFileReader();
//String logFile=propertiesFileReaderRef.getProperties("/edoc.properties","EDOC_LOG");
//handler = new FileHandler("eDoc.log",0,1, true);
//logger = Logger.getLogger("ErrorMsg");
//logger.addHandler(handler);
//logger.setLevel(Level.ALL);
}catch(Exception excp)
//NGP/JDK Logging warning
//logger.log(Level.WARNING, "{0} : Unable to find Resource Bundle File : {1}",new Object[] {"MSG001","ErrorMsg"});
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.JNDINotFound","PurchaseOrderCMPBeanJNDI not found");
Object objDocumentFile[]=null;
ISFXWebClientSLHome iSFXWebClientSLHomeRef=null;
ISFXWebClientSL iSFXWebClientSLRef=null;
try{
//Locating SFX WEB CLIENT SESSION BEAN
InitialContext initialContext=new InitialContext();
Object sfxWebClient=null;
try{
sfxWebClient=initialContext.lookup("SFXWebClientJNDI");
catch(Exception e)
//NGP/JDK Logging if JNDI not found
//logger.log(Level.SEVERE, "{0} : JNDI not found : {1}",new Object[] {"MSG002","SFXWebClientJNDI"});
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.JNDINotFound","SFXWebClientJNDI not found");
iSFXWebClientSLHomeRef=(ISFXWebClientSLHome)PortableRemoteObject.narrow(sfxWebClient,ISFXWebClientSLHome.class);
//creation of SFX we client
iSFXWebClientSLRef=iSFXWebClientSLHomeRef.create();
int arrSFXFileId[]=new int[argSfxFileId.length];
logger.finer("SFXWebClient created----");
//holds the sequence of SFX file id in the array
//EFile file=new EFile();
//getting context of the server
InitialContext documentCMPInitialContext=getInitialContext();
Object objDocumentCMPRef=null;
int docId=0;
try{
objDocumentCMPRef=documentCMPInitialContext.lookup("DocumentCMPBeanJNDI");
catch(Exception e)
//NGP/JDK Logging if JNDI not found
//logger.log(Level.SEVERE, "{0} : JNDI not found : {1}",new Object[] {"MSG002","DocumentCMPBeanJNDI"});
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.JNDINotFound","DocumentCMPBeanJNDI not found");
//Home interface reference of DocumentCMP EJB
//IDocumentCMPHome iDocumentCMPHomeRef=(IDocumentCMPHome)PortableRemoteObject.narrow(objDocumentCMPRef,IDocumentCMPHome.class);
IDocumentCMPHome iDocumentCMPHomeRef=(IDocumentCMPHome)objDocumentCMPRef;
//find the document id in the Document table from the SFx File Id
for(int index=0;index<argSfxFileId.length;index++)
arrSFXFileId[index]=argSfxFileId[index].intValue();
logger.finer("mpsDocumentView arrSFXFileId[index]--"+arrSFXFileId[index]);
logger.finer("For Document auditing----");
//Remote interface reference of DocumentCMP EJB
IDocumentCMP iDocumentCMPRef=iDocumentCMPHomeRef.findDocIdBySfxId(new Integer(arrSFXFileId[index]));
docId=iDocumentCMPRef.getDocumentId().intValue();
//for document audit
try{
boolean flagAudit=mlogOriginDocumentAudit("Document is Viewed",docId,5,argUserId);
catch(Exception e)
//logger.finer("Document cannot be audited----");
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in audit processing");
//call the retrieveDocument method for the above array of elements
//Object[] tempObjDocumentFile=iSFXWebClientSLRef.retrieveDocument(argUserId,arrSFXFileId);
//EFile file=new EFile();
//for(int index=0;index<tempObjDocumentFile.length;index++){
// file= (EFile) tempObjDocumentFile[index];
// objDocumentFile[finalIndex++]=file.getDocFileName();
// objDocumentFile[finalIndex++]=file.getDocFileContent();
objDocumentFile=iSFXWebClientSLRef.retrieveDocument(argUserId,arrSFXFileId);
//EFile[] efileArray = (EFile[]) = objDocumentFile;
searchResult = new Object[efileArray.length*2];
for (int i=0;i<efileArray.length;i=i+2)
EFile currentFile = efileArray[i];
searchResult[i] = currentFile.getDocFileName();
searchResult[i+1] = currentFile.getDocFileContent();
searchResult=iSFXWebClientSLRef.retrieveDocument(argUserId,arrSFXFileId);
}//end of try
catch(Exception expt)
//logger.finer(expt);
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in retrieve from SFX");
//if exception occurs returns null as per initilisation above
//logger.finer("mpsDocumentView size--"+objDocumentFile.length);
return searchResult;
//**************************** FILE RETRIEVE IMPLEMENTATION FOR MLOG PEOPLE*******************************
* <b>
* Used for Retrieval of a document.
* </b>
* This function is called from struts.
* <p>
* @param argDocumentId Documnet Id which gives the ID of the document in the eDoc database..
* @param argUserId User Id of the user who wants to retrieve the document
* @return Returns a one dimentional Object array containing a series of file name and file content of the retrieved documents.
public Object[] mlogOriginDocumentView(int argDocumentId,String argUserId) throws RemoteException
//NGP/JDK Logging
logger.finer("mlogOriginDocumentView called--");
try{
argUserId=argUserId.toUpperCase();
catch(Exception e)
//e.printStackTrace();
logger.log("net.mlog.edoc.ejb.session.EdocRetrieveServiceSLBean.ProcessException","Exception in uppercase");
//logger.finer("mlogOriginDocumentView-- argDocumentId---"+argDocumentId);
/*FileHandler handler = null;
Logger logger=null;
try
//PropertiesFileReader propertiesFileReaderRef=new PropertiesFileReader();
//String logFile=propertiesFileReaderRef.getProperties("/edoc.properties","EDOC_LOG");
//handler = new FileHandler("eDoc.log",0,1, tr -
Problem with Exception Worksheet using Data from Supply Plan Data Table
I added a series for a flag that indicates whether product is sourced from multiple manufacturing sites for a given customer and item. The flag is on the supply plan data table because it depends on the scenario. I created an exception worksheet for when the flag is set but all combinations are being displayed. If the flag is not set for a given combo then "Selected Page Item has No Data" is displayed in place of the table. I want only the combinations that meet the exception to be shown. I tried setting up an exception worksheet for customer shipments which is also on the supply plan data table but saw the same issue with all combinations being displayed whether or not the condition is met. Does anyone know of any issues with using exception worksheets with the supply plan data table? I searched the documentation and saw that exceptions behave differently with promotion series but this isn't a promotion.
I'm using Demantra version 7.2. Thanks for any help!
Edited by: user9253208 on Mar 30, 2010 6:40 AMThanks. We have come up with a workaround. While the combinations on the left are not affected by the exception, the data in the main table is so we moved as many levels as possible into the table. The performance is slow but the data is more useful, especially when exported into Excel. I was hoping for a better solution but I guess we'll just have to stick with what we've come up with.
-
Issue with Exceptions in Reporting
Hi BW Gurus,
I am still new to BW, Like I have a issue with exceptions in reporting.
Let me explain clearly, I created a report which gives me two MRP values they are for example V1 and PD(there other MRP types but I am focusing only this two). Here I can see in my report those two values and the overall result of all MRP types (they are 6 different types). My report looks like this for examply
V1 46,782,434(this are rough figures)
PD 56,232,453
Overall Result 102,434,111
Here my requirement is I need to find this overall result like accroding to thresold values this overall result shows RED,YELLOW,GREEN.
I have given threshold values in exceptions. like
0 -
> 45,000,000(Red)
45,000,001 -
> 65,000,000 (Yellow)
65,000,001 -
> 500,000,000 (Green)
But according to this values I should get Red( Overall Result), I cant see any change in the overall result.
Please can some one give advice how to reflect this threshold values in my report.Or I have to select any other options in exceptions.
Thanks in advance.
Regds
SamNot really possible with BEx functions, but if you provide a workbook to users you can just type in this information in a non-Bex cell and save the workbook.
Else you can try to name your exception such that it shows the value ranges. Then in the report, from the toolbar Layout > Display Exceptions.
Hope this helps... -
Issues with the SQL wrapper scripts created with the DB adapter
Hi All,
We have the wrapper sql scripts created with the DB adapter configurations which are being used to invoke the stored procedures.
To give you a background on the wrapper sql scripts-The Adapter Configuration wizard generates a wrapper API when a PL/SQL API has arguments of data types, such as PL/SQL Boolean, PL/SQL Table, or PL/SQL Record.
These two SQL files are saved in the same directory where the WSDL and XSD files are stored, and are available in the Project view.
The issue we are facing now is that whenever the associated package or the procedure structure undergoes a change we see an error as given below:
An unhandled exception has been thrown in the ESB system. The exception reported is: "org.collaxa.thirdparty.apache.wsif.WSIFException: esb:///ESB_Projects/Application1_ABC_ESB/DBADP_Update_Out.wsdl [ DBADP_Update_Out_ptt::DBADP_Update_Out(InputParameters,OutputParameters) ] - WSIF JCA Execute of operation 'DBADP_Update_Out' failed due to: Error while trying to prepare and execute an API. An error occurred while preparing and executing the APPS.XXIRIS_SOA_R_WRAPPER.XXIRIS_AR_CUST_K$ API. Cause: java.sql.SQLException: ORA-04068: existing state of packages has been discarded ORA-04061: existing state of package body "APPS.XXIRIS_AR_CUST_K" has been invalidated ORA-04065: not executed, altered or dropped package body "APPS.XXIRIS_AR_CUST_K" ORA-06508: PL/SQL: could not find program unit being called: "APPS.XXIRIS_AR_CUST_K" ORA-06512: at "APPS.XXIRIS_SOA_R_WRAPPER", line 1 ORA-06512: at line 1 [Caused by: ORA-04068: existing state of packages has been discarded ORA-04061: existing state of package body
In such cases we need to either execute the wrapper scripts again or refresh the connection pool in case the wrapper sql scripts for that procedure are not available.
In some cases we see that the first instance errors out.However the second request and the subsequent requests after that goes through successfully.
Please do let me know if anyone has faced such issues before.
Any inputs in this regard would be of great help.
Thanks in advance!
DeepthiI stumbled on a link in the oracle forum which says that the "create or replace package XXX" at the start of the PL/SQL procedure when run seems to intermittently cause the ORA-04068: existing state of packages has been discarded problem.
As per the solution suggested an “alter package XXX compile" can be executed after the changes are made and then we would no longer get the error in BPEL/ESB and dont have to bounce the server too.
__http://forums.oracle.com/forums/thread.jspa?threadID=185762_
However the above solution does not seem to resolve the issue.
Any help in this regard would be highly appreciated.
Thanks,
Deepthi -
VF11 wrongly created with RV Doc type and with not clear status.
Hi All
Issue: There are 2 billing documents which were created(VF01) in March are canceled (VF11) in May. Cancel document is saved with a message (No automatic clearing of billing document XXXXXXXXX) and message diagnosis saying that u201CThe Automatic clearing of billing document and reversal is not possible. This may be, for example, because the line item update is deactivatedu201D
In the SD document flow cancel billing document is created and it's posted to accounting with Document type RV(which is not configured in the billing types) and it is in not clear status.
2 Sales order types are ZNRC(No Rebate u2013 Credit) second is ZCR (CM Req With Refer).
Order Type : ZNRC , Billing type :ZG2, Cancel billing type :Z5, Accounting document in billing type for ZG2: is DG and accounting document in cancel billing type Z5 is :(_) blank.
Order type: ZCR Billing type :G2, Cancel billing type :S2, Accounting document in billing type for G2: is DG and accounting document in cancel billing type S2 is :(_) blank.
FI document type Not maintained in the cancel billing type configuration because this should be determine by reversal document type DA which is maintained in DG document type from FI side. It will be triggered in VF11)
The above configuration is working with the order created VA01,billing VF01 and cancelling VF11 done in same period. If the order and billing done in old period and canceling(VF11) done in current period than FI document creating with RV document type and with not clear status in the document flow.
I reviewed similar issues with SAP Note and with below explanation:
"There are 2 procedures that are possible when Vf11 is posted.
Old Procedure - An FI "Reversal" document was created that was not connected with the orignal.
New Procedure - A Real FI reversal was carried out with clearing."
In this case, our system is following with new procedure except above mentioned orders created in previous period and and canceled in current period.
My Questions are: How the RV document is getting triggered here? why the cancel document (Reversal FI Doc) is not clearing?
Appreciate your answers or suggestions.
Thanks in advance,
Sunil
Edited by: Sunil kumar Matta on Jun 9, 2011 3:40 PMThank you Ivano.
I referred SAP note 1259505 and 339928. But initially we thought of none of the symptoms mentioned in the SAP note are matching with our issue. Then we contacted SAP online support and they suggested checking one SAP note (Mentioned above).
Our system is following new cancellation procedure, but itu2019s failing only for some few documents.
Finally we identified several reasons for the issue. One is profitability segment in the billing document and cancelled document is different due to some changes in segment assignments. Another one is consolidation- consolidation document does not exist in the billing document list but it is getting created in Canceled document (VF11).(Consolidation postings are switched off some time back and now itu2019s on)
After some discussions it is decided to include accounting document type (Reversal) in cancel billing types to avoid default RV document type in canceled billing document accounting document. And non-cleared documents need to be created manually in F-32.
Thread is closed.
Sunil -
PO item level validation if create with ref to contract
Hi
Pl help me to fulfill the following client requirement:
When user create the PO with ref to contract , system fetch the all data from the contract to PO at line item level, but in the PO, user is able to change the contract line item rate.
Now contract line item rate is already fixed with vendor & PO creator should not allowed change this rate.
Could you provide the any standard configuaration or development to restric the user to chage the PO line item rate if created with ref to contract
Pl give me replay as soon as possible as it is very urgent
Rgds
NishitHi,
First you have to create a separate document type which is to be used for creation of PO referring a contract . Than define functional authorisation to buyers going by the menupath -Materials management > Purchasing > Authorisation management > Define function authorisations for buyers-Function Authorizations: Purchase Order. Here enter the field selection key of the new PO document type you created . Than check the box "Display Prices" . Uncheck all other boxes .You can check reference to Contract against possible reference Objects. Than save . Than in the User id enter the User parameter EFB and allocate the aparameter to the user . Also remove other document types of POs except the newly created document type in user authorisations. This will prevent change of price field in the specific document type.
Dhruba -
Can I (and how) convert a VI created with LV 7 in LV 5?
I received two VI files created with Labview 7.0, one is VI 7.0, the other LV 6.1. My problem is that I only have LabView 5.0 installed (and no possibility of having the 7.0 release), and it doesn't open them (I get the "Error code: 8", message). Is there any possibility to convert these files to render them compatible with the LV 5.0 version? The VI is pretty complex and I'd like to avoid the struggle of recreating it from scratch.
Your best bet is to zip the vi and post them here, if you can. Otherwise you will have to find someone with the various versions of LabVIEW as each version will only save to the previous. Additionally, there have been a few (a lot!) of features added that won't translate backwards, so if any of the vi's contains them they will be broken.
Putnam Monroe
Certified LabVIEW Developer
Putnam
Certified LabVIEW Developer
Senior Test Engineer
Currently using LV 6.1-LabVIEW 2012, RT8.5
LabVIEW Champion -
How to create an exception in query designer?
Hi,
I am new to BW. I created an exception and set the from and to limits with an alert level of green for an amount column. When I run this query in the web, it does not change the color to green for the condition in the amount column. What is the validity area of exception? Do I need to enter anything there? I am in BW 3.5Hi,
You need to change the default option Result only to all the cells in the second tab(cell defining) of Exceptions in query designer.
http://help.sap.com/saphelp_nw04s/helpdata/en/68/253239bd1fa74ee10000000a114084/frameset.htm
http://help.sap.com/saphelp_nw04s/helpdata/en/1a/615f64816311d38b170000e8284689/frameset.htm
http://help.sap.com/saphelp_nw04/helpdata/en/68/253239bd1fa74ee10000000a114084/frameset.htm
Hope this helps............
Rgs,
Ravikanth.
Maybe you are looking for
-
Airplay from Apple TV to a speaker?
Is it possible to stream with airplay from Apple TV to an Airplay speaker (like Libratone Live)? I wanna have the same sound in every room. Playing from my Apple TV.
-
Second new hub and still got a number o problems
Moved to BT infinity about 2 months ago, originally all sorts of issues mainly on wireless - very poor speeds and hardly a signal upstairs. got a new hub delivered and still get similar issues. most notbaly the sky+ box in the same room doesn't keep
-
Export resolution and camera resolution question
I am thinking of buying a new camera- specifically one that will film video in widescreen as well as widescreen photo's. I have been looking at some that have a maximum video resolution of 848x480, which will come out fine. With iMovie, so far I have
-
Problème avec imprimante Adobe CreatePDF
Bonjour, Récemment abonnée à Adobe Create PDF, j'ai téléchargé l'imprimante de bureau et réussi à générer seulement 3 pdf . Maintenant à chaque tentative, rien ne se passe et j'ai le message suivant : D'avance, Merci à qui pourra m'aider !
-
Installing new iTunes version and won't let me advance past QuickTime
SOMEONE PLEASE HELP! ok so I'm attempting to update my iPhone 3G to the new 3.0 software and I CANNOT install new iTunes version 8.2.0.23 because as soon as installation begins it starts running the QuickTime install and says "A newer version of Quic