PKCS#11 Provider unable to fetch asymmetric keys and certificates
Hi,
I'm facing a problem while getting keys and certificate from Eracom HSM (ProtectServer Orange:38039 Model: PSO:PL50) using Sun PKCS#11 Provider. It gets only the symmetric keys but NEVER gets the asymmetric keys.
My code snippet and configuration file are:
Java Code:
java.io.InputStream is = new java.io.FileInputStream("pkcs11.cfg");
sun.security.pkcs11.SunPKCS11 pkcs11_provider = new sun.security.pkcs11.SunPKCS11(is);
System.out.println("Provider Name : " + pkcs11_provider.getName());
java.security.Security.addProvider(pkcs11_provider);
KeyStore ks = KeyStore.getInstance("PKCS11", pkcs11_provider);
ks.load(null, "password".toCharArray());
java.util.Enumeration obj_enumeration = ks.aliases();
while (obj_enumeration.hasMoreElements()) {
String str_certAlias = (String) obj_enumeration.nextElement();
System.out.println("Alias : " + str_certAlias);
pkcs11.cfg:
name = Eracom
library = G:\Eracom\cryptoki.dll
slot = 0
attributes(*, CKO_PRIVATE_KEY, *) = {
CKA_TOKEN = false
CKA_SENSITIVE = false
CKA_EXTRACTABLE = true
CKA_DECRYPT = true
CKA_SIGN = true
CKA_SIGN_RECOVER = true
CKA_UNWRAP = true
attributes(*, CKO_PUBLIC_KEY, *) = {
CKA_ENCRYPT = true
CKA_VERIFY = true
CKA_VERIFY_RECOVER = true
CKA_WRAP = true
I also ran my program without specifying any attributes in configuration file, also tried many other combination, but in all cases (with or without attributes) only symmetric keys are loaded from HSM. I am able to get all keys (symmteric and asymmteric) and certificates from the same HSM using IAIK PKCS#11 Provider. Though, the Sun PKCS#11 Provider is working fine with SmartCard tokens (Rainbow, Alladin etc.)
Any help to resolve my problem would be highly appreciated.
Thanks in advance.
I recently had a problem with ECDSA and the PKCS#11 library of nCipher. Here's info from one of their engineers about the PKCS11 library:
"There are two separate issues - one is that our current pkcs11
release doesn't support ECDSA signature with SHA-2 hashes
(the v11.00 firmware adds support for it, but the main release version of
the pkcs11 library hasn't been updated to take advantage of it yet).
There is a hotfix version that does support SHA-2 hashes with some
restrictions, talk to [email protected] for details, and V11.10
should be out soon and have that merged in.
But the issue with setting CKA_SIGN is that our underlying HSM API
allows elliptic curve keys to be either key exchange (ECDH) or
signature (ECDSA) keys, but not both at one.
At the PKCS #11 level, if you specify CKA_DERIVE=true and let
CKA_SIGN default, it will default to false, and vice versa.
If you specify both CKA_DERIVE=true and CKA_SIGN=true, then we
return CKR_TEMPLATE_INCONSISTENT because we can't do both with
the same key. (However, the tests using C_GetMechanismInfo will
show that we can do both mechanisms, because we can - so long
as you use different keys, even though they have the same PKCS#11
type.)
I can't comment on when or how that will be changed."
I was using the PKCS#11 library through NSS when I ran into the problem, but I imagine Java would run into similar problems also using the PKCS#11 library. I was able to generate keypairs but not create a CSR (which required making a signature, which required SHA-2).
Can you just use the java classes to speak to the netHSM? I've never directly written code to do so myself, but I have used Corestreet's OCSP product that uses the java classes to speak to the nCipher HSMs (though not using EC). It might work better than going through the PKCS#11 layer. There should be a java directory under NFAST_HOME that contains some jars.
Please post back if you figure anything out as I'll probably be playing with this stuff myself soon.
Dave
Similar Messages
-
Unable to retrieve public key and signature.
Hi,
I'am trying to send public key and signature from one client to another via server.
Both pub_key and signature are encrypted into base64. But i cant retrieve them correctly in server side.
I'am using ECDSA to sign message key_length 224bit. Sending and retrieving data via sockets.
SEND DATA FUNCTION Client.java
private static PrintWriter output_stream = null;
private static Scanner input_stream = null;
private static void send_message(String message)
if(user_name != null
&& message_text_area.getText().equals(SERVER_CLOSED) == false
&& message_text_area.getText().equals(SERVER_CONNECTED) == false
&& message_text_area.getText().equals(MAX_USERS_ONLINE) == false
&& message_text_area.getText().equals(CONNECTION_CLOSED) == false
&& message_text_area.getText().equals(GET_USER) == false
&& message_text_area.getText().equals(REMOVE_USER) == false
&& message_text_area.getText().equals(USER_EXISTS) == false
&& message_text_area.getText().equals(USER_NICK) == false){
String signature = new BASE64Encoder().encode(ecdsa_parameters.sign_message(SESSION_KEY_PAIR.getPrivate(), message_text_area.getText().trim()));
String public_key = new BASE64Encoder().encode(SESSION_KEY_PAIR.getPublic().getEncoded());
if (signature != null && SESSION_KEY_PAIR != null){
synchronized(output_stream)
output_stream.println(USER_NICK);
output_stream.println(user_name);
output_stream.println(user_nick);
output_stream.println(message_text_area.getText().trim());
//PUblic key and signature in base64
output_stream.println(public_key);
output_stream.println(signature);
//length and data of them
System.out.println(public_key.length());
System.out.println(signature.length());
System.out.println(public_key);
System.out.println(signature);
append_message(user_nick+": "+message_text_area.getText().trim());
message_text_area.setText(null);
}else{
append_message("E_C_002: Unable to generate keys or signature.");
}else{
append_message("User is not selected or incorrect message");
}HANDLER.JAVA (SERVER SIDE RETRIEVE)
private Scanner input_data = null;
private PrintStream output_data = null;
if(recieved_data.equals(USER_NICK)){
String user_name = input_data.nextLine();
String user_nick = input_data.nextLine();
String message = input_data.nextLine();
String public_key = "";
for (int i=0; i<5; i++){
if(i == 0){
public_key = public_key+""+input_data.next();
}else{
public_key = public_key+"\n"+input_data.next();
String signature = "";
for (int i=0; i<2; i++){
if(i == 0){
signature = signature+""+input_data.next();
}else{
signature = signature+"\n"+input_data.next();
//output length and data of key and signature
System.out.println(public_key.length());
System.out.println(signature.length());
System.out.println(public_key);
System.out.println(signature);
Server.users_messages.addElement(user_name+""+SEPARATOR+""+user_nick+""+SEPARATOR+""+message+""+SEPARATOR+""+public_key+""+SEPARATOR+""+signature);
}It seems that length of key and signature in server side are different form client.
Maybe I'am missing something that correspond sending data in base64????
All project is here http://fmf.vtu.lt/~knugmanov/Elliptic%20curve%20cryptography%20instant%20messenger.rar
(import into eclypse).
For ECC I use iaik classes.
Thanks in adv.
Kirilhere is a code from
http://www.exampledepot.com/egs/java.security/GetKeyFromKs.html
This example retrieves from a keystore, the private and public key associated with an alias.
private and public key are having the same alias ?
i know a alias for my key but i believe thats for private key not for public key ......is it true that both private and public key have the same alias ?
and KeyPair is an interface and so its difficult to get a key out of it
public KeyPair getPrivateKey(KeyStore keystore, String alias, char[] password) {
try {
// Get private key
Key key = keystore.getKey(alias, password);
if (key instanceof PrivateKey) {
// Get certificate of public key
java.security.cert.Certificate cert = keystore.getCertificate(alias);
// Get public key
PublicKey publicKey = cert.getPublicKey();
// Return a key pair
return new KeyPair(publicKey, (PrivateKey)key);
} catch (UnrecoverableKeyException e) {
} catch (NoSuchAlgorithmException e) {
} catch (KeyStoreException e) {
return null;
}Message was edited by:
Unknown_Citizen
Message was edited by:
Unknown_Citizen
Message was edited by:
Unknown_Citizen -
JSSE: keys and certificates
1)What exactly is the difference between a key and a certificate?
2)Can both be used by JSSE?
3)How can I obtain a key?
4)A private and a public key? are it two separate files or what is it?The first (and until so far only time) that I used SSL was with a webapplication, running on tomcat on SSL. Then I was told to generate a keystore with the keytool command and that was all and everything worked fine. You would have had to import a certificate from the server to the client's truststore. If you worked at the server end you would have had to generate a key and either a self-signed cert or the whole CSR, get it signed, re-import sequence. This is a bit more than just 'generate a keystore with the keytool command'.
if you never heard about the keytoolAre you kidding me?
1)So this keystore was then a self-signed-certificate or even not a certificate at all???keytool -genkey generates a private/public key pair. keytool -selfcert generates a self-signed certificate for that keypair. Nobody in the world will trust that certificate unless you export it from this keystore and import it into their truststore. By contrast, if you generate a CSR, get it signed by a well-known CA, and import the signed cert into the same keystore the CSR came from, everybody will trust that cert, because they already trust the CA. BTW these things aren't they keystore, they are in the keystore.
2)The keystore contains thus a private and public key, which ensure integrity and confidentiality.... but NOT client and server autentication?The public/private key system can give you integrity and confidentiality. The X.509 certificate system can be used for authentication. They are different things. -
Replacing SSL keys and certificates for already defined services
I have about 10 new 2048-bit keys and certs to replace existing 1024 bit keys and certs on my CSS11500 with SSL modules.
I'm trying to figure out my options, now that I've got the files SFTP'ed to the CSS.
I can create a new startup-config file for the CSS with the new files referenced by the SSL associate commands in the startup-config. This will require a reboot (not desired).
I can come up with new associations for the new files, then suspend the ssl-proxy-list and edit it to use the new associations. This doesn't require a reboot but then I have to clear out the old associations before I can delete the old key/cert files.
Is there any way to force the CSS to "overwrite" an existing SSL association without rebooting the CSS?"Clear file filename "password" commad will help you to clear SSL certificates and private keys from the CSS that are no longer valid.
Please check if the below URL: could help:
http://www.cisco.com/en/US/docs/app_ntwk_services/data_center_app_services/css11500series/v7.40/command/reference/CmdGenA.html#wp1030153 -
WLS70 SSL encrypted keys and Certificate Request Generator
Hi,
we are trying to certificate our WLS 7.0. We use the Certificate Request Generator
webapp for generating the request. The generator forces the user to give in a
private key password. But in the server's SSL config tab the field "Use encrypted
Keys" is fixed to "false" (in WLS 6.1 this field is a checkbox). Is this a bug
in WLS7.0?Hi Alain,
thanks for your workaround. We will check it out ... although I've been instructed
on the BEA admin trainee to never change config.xml manually :)
"Alain Hsiung" <[email protected]> wrote:
Hi Joern
consider it a bug or not, you can go to the file config.xml and edit
the
XML attribute "KeyEncrypted" of the XML element "SSL" to "true".
Hope this helps.
Regards
Alain Hsiung, Ideartis Inc.
"Joern Wohlrab" <[email protected]> wrote in message
news:[email protected]..
Hi,
we are trying to certificate our WLS 7.0. We use the Certificate RequestGenerator
webapp for generating the request. The generator forces the user togive
in a
private key password. But in the server's SSL config tab the field"Use
encrypted
Keys" is fixed to "false" (in WLS 6.1 this field is a checkbox). Isthis a
bug
in WLS7.0? -
Error Unable to fetch authentication_scheme (XE specific?)
Was a bit disappointed to discover in ApEx on XE I can not define multiple oracle accounts and just swap these in the Edit Application Attributes/Parsing schema recently like I can on the non XE database, but never mind, I just create a new database account, build the database objects and then import an app export from the old schema - right?
Wrong: I get the Error Unable to fetch authentication_scheme error and the parsing schema is correct. This is on an XP machine with version 2 of ApEx.
I used the export and it went into the Oracle hosted site without any issues.
PhilScott
Hope this helps. Much thanks in advance,
Phil
--=--=--
SQL*Plus: Release 10.2.0.1.0 - Beta on Wed May 17 21:24:54 2006
Copyright (c) 1982, 2005, Oracle. All rights reserved.
Connected to:
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Beta
SQL> set numformat 999999999999999999999999999
SQL> ---------- # 1 App ID 103
SQL> select security_group_id,owner, authentication,
2 custom_authentication_process from flows_020100.wwv_flows
3 where id=103
4 /
SECURITY_GROUP_ID OWNER
AUTHENTICATION
CUSTOM_AUTHENTICATION_PROCESS
698507975747714 HR
CUSTOM2
.1580108075227870.
SQL>
SQL> select id,name,security_group_id from
2 flows_020100.wwv_flow_custom_auth_setups where flow_id=103
3 /
ID
NAME
SECURITY_GROUP_ID
1580108075227870
HTML DB
698507975747714
1580219849227870
DATABASE
698507975747714
ID
NAME
SECURITY_GROUP_ID
SQL>
SQL> select short_name,provisioning_company_id from flows_020100.wwv_flow_companies;
SHORT_NAME
PROVISIONING_COMPANY_ID
Unknown
0
INTERNAL
10
SYSTEM
696210144731575
SHORT_NAME
PROVISIONING_COMPANY_ID
HR
698507975747714
DEMO
708308154793215
M2
1640709924346523
SHORT_NAME
PROVISIONING_COMPANY_ID
SAFEX
1655628274476335
7 rows selected.
SQL>
SQL>
SQL> ---------- # 2 App ID 106
SQL>
SQL> select security_group_id,owner, authentication, custom_authentication_process
2 from flows_020100.wwv_flows where id=106
3 /
SECURITY_GROUP_ID OWNER
AUTHENTICATION
CUSTOM_AUTHENTICATION_PROCESS
1655628274476335 SAFEX
CUSTOM2
.3266419425866274.
SQL>
SQL>
SQL> select id,name,security_group_id from flows_020100.wwv_flow_custom_auth_setups
2 where flow_id=106
3 /
no rows selected
SQL>
SQL>
SQL> select short_name,provisioning_company_id from flows_020100.wwv_flow_companies;
SHORT_NAME
PROVISIONING_COMPANY_ID
Unknown
0
INTERNAL
10
SYSTEM
696210144731575
SHORT_NAME
PROVISIONING_COMPANY_ID
HR
698507975747714
DEMO
708308154793215
M2
1640709924346523
SHORT_NAME
PROVISIONING_COMPANY_ID
SAFEX
1655628274476335
7 rows selected.
SQL> -
[APP: soa-infra] . Unable to fetch/generate encryption key.
Hello;
I am installing Fusion Middleware 11.1.1.7 on a Windows 2008 R2 64 bit server that is running in Oracle VM.
Components installed:
Oracle SE database Enterprise
RCU
WLS - 10.3.6
OSB
SOA
BAM
Web Center.
I am not sure why I am getiting this message but when I start the SOA server I get the following message:
[APP: soa-infra] <.> Unable to fetch/generate encryption key.[[Unable to fetch/generate encryption key.
Check installation/post-installation steps for errors. Check for errors during SOA server startup. ORABPEL-35012 Unable to fetch/generate encryption key.
Unable to fetch/generate encryption key.
Check installation/post-installation steps for errors. Check for errors during SOA server startup.
at oracle.bpel.services.common.util.EncryptionService.<clinit>(EncryptionService.java:82)
at oracle.bpel.services.workflow.verification.impl.VerificationService$1.run(VerificationService.java:2803)
at oracle.bpel.services.workflow.verification.impl.VerificationService.encryptString(VerificationService.java:2801)
at oracle.bpel.services.workflow.verification.impl.VerificationService.createTokenFromMap(VerificationService.java:2544)
at oracle.bpel.services.workflow.verification.impl.VerificationService.getInternalContextToken(VerificationService.java:465)
at oracle.bpel.services.workflow.verification.impl.VerificationService.getInternalContext(VerificationService.java:492)
at oracle.bpel.services.workflow.verification.impl.VerificationService.<clinit>(VerificationService.java:425)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:877)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:839)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1010)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:423)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:728)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:93)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:248)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:168)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:884)
at org.springframework.beans.factory.access.SingletonBeanFactoryLocator.useBeanFactory(SingletonBeanFactoryLocator.java:397)
at org.springframework.ejb.support.AbstractEnterpriseBean.loadBeanFactory(AbstractEnterpriseBean.java:118)
at org.springframework.ejb.support.AbstractStatelessSessionBean.ejbCreate(AbstractStatelessSessionBean.java:66)
at oracle.bpm.bpmn.engine.instancemanagement.ejb.InternalInstanceManagementServiceBean_c6peyo_Impl.ejbCreate(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.oracle.pitchfork.inject.Jsr250Metadata.invokeLifecycleMethod(Jsr250Metadata.java:331)
at com.oracle.pitchfork.inject.Jsr250Metadata.invokeLifecycleMethod(Jsr250Metadata.java:325)
at com.oracle.pitchfork.inject.Jsr250Metadata.invokeLifecycleMethods(Jsr250Metadata.java:319)
at com.oracle.pitchfork.intercept.InterceptionMetadata.invokeLifecycleMethods(InterceptionMetadata.java:468)
at com.oracle.pitchfork.intercept.InterceptionMetadata$AdvisorChainProxyControl.invokeLifecycleMethod(InterceptionMetadata.java:416)
at sun.reflect.GeneratedMethodAccessor946.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:106)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy241.invokeLifecycleMethod(Unknown Source)
at weblogic.ejb.container.pool.StatelessSessionPool.createBean(StatelessSessionPool.java:212)
at weblogic.ejb.container.pool.Pool.createInitialBeans(Pool.java:299)
at weblogic.ejb.container.manager.StatelessManager.initializePool(StatelessManager.java:448)
at weblogic.ejb.container.deployer.EJBDeployer.initializePools(EJBDeployer.java:1649)
at weblogic.ejb.container.deployer.EJBDeployer.start(EJBDeployer.java:1477)
at weblogic.ejb.container.deployer.EJBModule.start(EJBModule.java:616)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:247)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:425)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:27)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:671)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:59)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:184)
at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:361)
at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:51)
at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200)
at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:30)
at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:169)
at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:123)
at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:180)
at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:96)
at weblogic.t3.srvr.SubsystemRequest.run(SubsystemRequest.java:64)
at weblogic.work.SelfTuningWorkManagerImpl$WorkAdapterImpl.run(SelfTuningWorkManagerImpl.java:545)
at weblogic.work.ExecuteThread.execute(ExecuteThread.java:256)
at weblogic.work.ExecuteThread.run(ExecuteThread.java:221)
Caused by: java.security.AccessControlException: access denied (oracle.security.jps.service.credstore.CredentialAccessPermission context=SYSTEM,mapName=BPM-CRYPTO,keyName=BPM-CRYPTO read)
at java.security.AccessControlContext.checkPermission(AccessControlContext.java:374)
at java.security.AccessController.checkPermission(AccessController.java:549)
at oracle.security.jps.util.JpsAuth$AuthorizationMechanism$3.checkPermission(JpsAuth.java:463)
at oracle.security.jps.util.JpsAuth.checkPermission(JpsAuth.java:523)
at oracle.security.jps.util.JpsAuth.checkPermission(JpsAuth.java:549)
at oracle.security.jps.internal.credstore.util.CsfUtil.checkPermission(CsfUtil.java:684)
at oracle.security.jps.internal.credstore.ssp.SspCredentialStore.getCredential(SspCredentialStore.java:562)
at oracle.bpel.services.common.util.EncryptionService$1.run(EncryptionService.java:72)
at oracle.bpel.services.common.util.EncryptionService.<clinit>(EncryptionService.java:61)
at oracle.bpel.services.workflow.verification.impl.VerificationService$1.run(VerificationService.java:2803)
at oracle.bpel.services.workflow.verification.impl.VerificationService.encryptString(VerificationService.java:2801)
at oracle.bpel.services.workflow.verification.impl.VerificationService.createTokenFromMap(VerificationService.java:2544)
at oracle.bpel.services.workflow.verification.impl.VerificationService.getInternalContextToken(VerificationService.java:465)
at oracle.bpel.services.workflow.verification.impl.VerificationService.getInternalContext(VerificationService.java:492)
at oracle.bpel.services.workflow.verification.impl.VerificationService.<clinit>(VerificationService.java:425)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:61)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.instantiateBean(AbstractAutowireCapableBeanFactory.java:877)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:839)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1011)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1011)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveReference(BeanDefinitionValueResolver.java:269)
at org.springframework.beans.factory.support.BeanDefinitionValueResolver.resolveValueIfNecessary(BeanDefinitionValueResolver.java:104)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.applyPropertyValues(AbstractAutowireCapableBeanFactory.java:1245)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.populateBean(AbstractAutowireCapableBeanFactory.java:1011)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:472)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:164)
at org.springframework.beans.factory.support.DefaultListableBeanFactory.preInstantiateSingletons(DefaultListableBeanFactory.java:423)
at org.springframework.context.support.AbstractApplicationContext.finishBeanFactoryInitialization(AbstractApplicationContext.java:729)
at org.springframework.context.support.AbstractApplicationContext.refresh(AbstractApplicationContext.java:380)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:139)
at org.springframework.context.support.ClassPathXmlApplicationContext.<init>(ClassPathXmlApplicationContext.java:94)
at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)
at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:39)
at sun.reflect.DelegatingConstructorAccessorImpl.newInstance(DelegatingConstructorAccessorImpl.java:27)
at java.lang.reflect.Constructor.newInstance(Constructor.java:513)
at org.springframework.beans.BeanUtils.instantiateClass(BeanUtils.java:100)
at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java:87)
at org.springframework.beans.factory.support.ConstructorResolver.autowireConstructor(ConstructorResolver.java:248)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.autowireConstructor(AbstractAutowireCapableBeanFactory.java:925)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBeanInstance(AbstractAutowireCapableBeanFactory.java:835)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.doCreateBean(AbstractAutowireCapableBeanFactory.java:440)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory$1.run(AbstractAutowireCapableBeanFactory.java:409)
at org.springframework.beans.factory.support.AbstractAutowireCapableBeanFactory.createBean(AbstractAutowireCapableBeanFactory.java:380)
at org.springframework.beans.factory.support.AbstractBeanFactory$1.getObject(AbstractBeanFactory.java:264)
at org.springframework.beans.factory.support.DefaultSingletonBeanRegistry.getSingleton(DefaultSingletonBeanRegistry.java:222)
at org.springframework.beans.factory.support.AbstractBeanFactory.doGetBean(AbstractBeanFactory.java:261)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:185)
at org.springframework.beans.factory.support.AbstractBeanFactory.getBean(AbstractBeanFactory.java:168)
at org.springframework.context.support.AbstractApplicationContext.getBean(AbstractApplicationContext.java:884)
at org.springframework.beans.factory.access.SingletonBeanFactoryLocator.useBeanFactory(SingletonBeanFactoryLocator.java:397)
at org.springframework.ejb.support.AbstractEnterpriseBean.loadBeanFactory(AbstractEnterpriseBean.java:118)
at org.springframework.ejb.support.AbstractStatelessSessionBean.ejbCreate(AbstractStatelessSessionBean.java:66)
at oracle.bpm.bpmn.engine.instancemanagement.ejb.InternalInstanceManagementServiceBean_c6peyo_Impl.ejbCreate(Unknown Source)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.oracle.pitchfork.inject.Jsr250Metadata.invokeLifecycleMethod(Jsr250Metadata.java:331)
at com.oracle.pitchfork.inject.Jsr250Metadata.invokeLifecycleMethod(Jsr250Metadata.java:325)
at com.oracle.pitchfork.inject.Jsr250Metadata.invokeLifecycleMethods(Jsr250Metadata.java:319)
at com.oracle.pitchfork.intercept.InterceptionMetadata.invokeLifecycleMethods(InterceptionMetadata.java:469)
at com.oracle.pitchfork.intercept.InterceptionMetadata$AdvisorChainProxyControl.invokeLifecycleMethod(InterceptionMetadata.java:417)
at sun.reflect.GeneratedMethodAccessor946.invoke(Unknown Source)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
at java.lang.reflect.Method.invoke(Method.java:597)
at com.bea.core.repackaged.springframework.aop.support.AopUtils.invokeJoinpointUsingReflection(AopUtils.java:310)
at com.bea.core.repackaged.springframework.aop.support.DelegatingIntroductionInterceptor.invoke(DelegatingIntroductionInterceptor.java:106)
at com.bea.core.repackaged.springframework.aop.framework.ReflectiveMethodInvocation.proceed(ReflectiveMethodInvocation.java:171)
at com.bea.core.repackaged.springframework.aop.framework.JdkDynamicAopProxy.invoke(JdkDynamicAopProxy.java:204)
at com.sun.proxy.$Proxy241.invokeLifecycleMethod(Unknown Source)
at weblogic.ejb.container.pool.StatelessSessionPool.createBean(StatelessSessionPool.java:212)
at weblogic.ejb.container.pool.Pool.createInitialBeans(Pool.java:299)
at weblogic.ejb.container.manager.StatelessManager.initializePool(StatelessManager.java:449)
at weblogic.ejb.container.deployer.EJBDeployer.initializePools(EJBDeployer.java:1649)
at weblogic.ejb.container.deployer.EJBDeployer.start(EJBDeployer.java:1479)
at weblogic.ejb.container.deployer.EJBModule.start(EJBModule.java:616)
at weblogic.application.internal.flow.ModuleListenerInvoker.start(ModuleListenerInvoker.java:249)
at weblogic.application.internal.flow.ModuleStateDriver$3.next(ModuleStateDriver.java:427)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.flow.ModuleStateDriver.start(ModuleStateDriver.java:119)
at weblogic.application.internal.flow.StartModulesFlow.activate(StartModulesFlow.java:28)
at weblogic.application.internal.BaseDeployment$2.next(BaseDeployment.java:672)
at weblogic.application.utils.StateMachineDriver.nextState(StateMachineDriver.java:52)
at weblogic.application.internal.BaseDeployment.activate(BaseDeployment.java:212)
at weblogic.application.internal.EarDeployment.activate(EarDeployment.java:59)
at weblogic.application.internal.DeploymentStateChecker.activate(DeploymentStateChecker.java:161)
at weblogic.deploy.internal.targetserver.AppContainerInvoker.activate(AppContainerInvoker.java:79)
at weblogic.deploy.internal.targetserver.BasicDeployment.activate(BasicDeployment.java:184)
at weblogic.deploy.internal.targetserver.BasicDeployment.activateFromServerLifecycle(BasicDeployment.java:361)
at weblogic.management.deploy.internal.DeploymentAdapter$1.doActivate(DeploymentAdapter.java:52)
at weblogic.management.deploy.internal.DeploymentAdapter.activate(DeploymentAdapter.java:200)
at weblogic.management.deploy.internal.AppTransition$2.transitionApp(AppTransition.java:31)
at weblogic.management.deploy.internal.ConfiguredDeployments.transitionApps(ConfiguredDeployments.java:240)
at weblogic.management.deploy.internal.ConfiguredDeployments.activate(ConfiguredDeployments.java:170)
at weblogic.management.deploy.internal.ConfiguredDeployments.deploy(ConfiguredDeployments.java:124)
at weblogic.management.deploy.internal.DeploymentServerService.resume(DeploymentServerService.java:181)
at weblogic.management.deploy.internal.DeploymentServerService.start(DeploymentServerService.java:97)
Any help would be apprreciated.
JI was able to resolve it myself. I started the SOA managed server via the command scripts and it came up with no errors. Issue is more than likely with the server arguments I added in the Admin console. I will try this and it it does not work I will add further updates to ths thread.
J -
Why are Symmetric keys shorter than ASyemmetric keys and provide the same level of security.
Hello
Can someone please help me with the following question.
Can someone please give me a brief (if possible) why Symmetric Keys which are much shorter than Asymmetric keys provide a similar level of security (e.g. take as long to crack).
I understand RSA and can to the math with a piece of paper and the Windows advanced calculator (e.g. encrypt and decrypt a sort message using a couple of small prims likes 53 and 59).
I also understand ( to a very basic level) AES e.g. 128bit block cypher (I believe a CBC cypher using an unpredictable IV)
Is there a simple answer if someone says why are Symmetric keys shorted and just as secure or it is just how it is? due to the different math?
Thank you
AAnoterUser__
AAnotherUser__Symmetric Key is used for same key for encrypsion & decryption but ASyemmetric key is used two keys (Public & private key) for
encrysion & decryption.
ASyemmetric
1. If Public key is used for encrypsion then private key is used for decryption
2. If private key is is used for encrypsion then public key is used for decryption.
3. It is more secure than Syemmetric
Regards,
Biswajit
MCTS, MCP 2003,MCSA 2003, MCSA:M 2003, CCNA, Enterprise Admin, ITIL F 2011
Blog:
Script Gallary:
LinkedIn:
Note: Disclaimer: This posting is provided & with no warranties or guarantees and confers no rights.. -
I have registered Adobe CS, and every two/three weeks i get a message that I am using a trial version. I provide my registration key, and the fun starts over in two/three weeks. What is going on?
I'm not sure what's happening. See if you can get some help from Web Chat here:
Serial number and activation support -
Unable to get Material No and Description from VBAP
Hi Gurus
Can anyone please help me to get material number and description from vbap table, The report is fine but I am unable to get material no and description.
regards
report ZCHGDOC_BY_SALES no standard page heading
line-size 132.
type-pools:
slis. " ALV types
Tables
tables:
cdhdr, " Change documents: Header
cdpos, " Change documents: Items
vbak, " Sales order: Header
mara, " Material No
user_addr, " User Address
vbap. " Contract order: Items
Types
types:
begin of ty_cdhdr,
objectclas like cdhdr-objectclas, " Object class
objectid like cdhdr-objectid, " Object value
changenr like cdhdr-changenr, " Document change number
username like cdhdr-username, " Changed by
udate like cdhdr-udate, " Changed on
utime like cdhdr-utime, " Changed at
tcode like cdhdr-tcode, " Transaction code
end of ty_cdhdr,
ty_it_cdhdr type ty_cdhdr occurs 0,
begin of ty_cdpos,
objectclas like cdpos-objectclas, " Object class
objectid like cdpos-objectid, " Object value
changenr like cdpos-changenr, " Document change number
tabname like cdpos-tabname, " Table name
tabkey like cdpos-tabkey, " Table key
fname like cdpos-fname, " Field name
chngind like cdpos-chngind, " Change indicator
value_new like cdpos-value_new, " New value of field
value_old like cdpos-value_old, " Old value of field
end of ty_cdpos,
ty_it_cdpos type ty_cdpos occurs 0,
begin of ty_dd03l,
tabname like dd03l-tabname,
fieldname like dd03l-fieldname,
as4local like dd03l-as4local,
as4vers like dd03l-as4vers,
rollname like dd03l-rollname,
end of ty_dd03l,
ty_it_dd03l type ty_dd03l occurs 0,
begin of ty_dd04t,
rollname like dd04t-rollname,
ddlanguage like dd04t-ddlanguage,
as4local like dd04t-as4local,
as4vers like dd04t-as4vers,
scrtext_l like dd04t-scrtext_l,
end of ty_dd04t,
ty_it_dd04t type ty_dd04t occurs 0,
begin of ty_kna1,
kunnr like kna1-kunnr, " Customer number
name1 like kna1-name1, " Customer name
end of ty_kna1,
ty_it_kna1 type ty_kna1 occurs 0,
begin of ty_user_addr,
bname like user_addr-bname, " user no
name_textc like user_addr-name_textc , " Username
end of ty_user_addr,
ty_it_user_addr type ty_user_addr occurs 0,
begin of ty_vbap,
matnr like vbap-matnr, " Material No
arktx like vbap-arktx, " Production Description
end of ty_vbap,
ty_it_vbap type ty_vbap occurs 0,
ty_text(500) type c,
ty_lines type tline,
ty_it_lines type ty_lines occurs 0,
begin of ty_merged,
vbeln like vbak-vbeln, " Sales order number
erdat like vbak-erdat, " Created on
auart like vbak-auart, " Order type
faksk like vbak-faksk, " Billing block in SD document
netwr like vbak-netwr, " Net value
waerk like vbak-waerk, " Currency
vkorg like vbak-vkorg, " Sales organisation
vtweg like vbak-vtweg, " Distribution channel
vkbur like vbak-vkbur, " Sales office
fkara like vbak-fkara, " Proposed billing type
kunnr like vbak-kunnr, " Sold-to party
bname like vbak-bname , " User No
xblnr like vbak-xblnr, " Reference
fbuda like vbkd-fbuda, " Date services rendered
username like cdhdr-username, " Changed by
udate like cdhdr-udate, " Changed on
utime like cdhdr-utime, " Changed at
tcode like cdhdr-tcode, " Transaction code
tabname like cdpos-tabname, " Table name
tabkey like cdpos-tabkey, " Table key
fname like cdpos-fname, " Field name
chngind like cdpos-chngind, " Change indicator
value_new like cdpos-value_new, " New value of field
value_old like cdpos-value_old, " Old value of field
scrtext_l like dd04t-scrtext_l, " Description of field
intnote type ty_text, " Internal note
hdrnote type ty_text, " Header note
name1 like adrc-name1, " Sold-to party name
matnr like vbap-matnr, " Material No
arktx like vbap-arktx, " Product Description
end of ty_merged,
ty_it_merged type ty_merged occurs 0,
begin of ty_vbak,
vbeln like vbak-vbeln, " Sales order number
erdat like vbak-erdat, " Created on
auart like vbak-auart, " Order type
faksk like vbak-faksk, " Billing block in SD document
netwr like vbak-netwr, " Net value
waerk like vbak-waerk, " Currency
vkorg like vbak-vkorg, " Sales organisation
vtweg like vbak-vtweg, " Distribution channel
vkbur like vbak-vkbur, " Sales office
fkara like vbak-fkara, " Proposed billing type
kunnr like vbak-kunnr, " Sold-to party
xblnr like vbak-xblnr, " Reference
objectid like cdhdr-objectid, " Change document object
end of ty_vbak,
ty_it_vbak type ty_vbak occurs 0,
begin of ty_vbkd,
vbeln like vbkd-vbeln, " Sales order number
posnr like vbkd-posnr, " Sales order item
fbuda like vbkd-fbuda, " Date services rendered
end of ty_vbkd,
ty_it_vbkd type ty_vbkd occurs 0.
Internal tables
data:
it_cdhdr type ty_it_cdhdr,
it_cdpos type ty_it_cdpos,
it_fieldcat type slis_t_fieldcat_alv,
it_kna1 type ty_it_kna1,
it_user_addr type ty_it_user_addr,
it_merged type ty_it_merged,
it_vbak type ty_it_vbak,
Material No
it_vbap type ty_it_vbap,
it_vbkd type ty_it_vbkd.
data:
wa_vbak type ty_vbak.
data:
st_tvariant like disvariant,
st_variant like disvariant.
constants:
co_as4local_a like dd03l-as4local " Active version
value 'A',
co_objectclas_verkbeleg like cdhdr-objectclas
value 'VERKBELEG',
co_posnr_initial like vbkd-posnr " Initial item number
value is initial,
co_posnr_initial_2 like vbap-posnr " Initial item number
value is initial,
co_save_u type c " User display variant
value 'U', " saving allowed.
co_trvog_0 like vbak-trvog " Sales order
value '0'.
data:
va_exit type c, " ALV display
va_tabix like sy-tabix.
selection-screen: begin of block b1 with frame title text-001.
select-options:
s_vkorg for vbak-vkorg OBLIGATORY, " Sales organisation
s_vkbur for vbak-vkbur, " Sales office
s_vtweg for vbak-vtweg, " Distribution channel
s_vbeln for vbak-vbeln, " Sales order number
s_usrnme for cdhdr-username, " Changed by
s_udate for cdhdr-udate. " Changed on
selection-screen: end of block b1,
begin of block b2 with frame title text-002.
parameters:
p_varint like disvariant-variant. " Display variant.
selection-screen: end of block b2.
Initialization
initialization.
Load display variant.
if not p_varint is initial.
move st_variant to st_tvariant.
move p_varint to st_tvariant-variant.
call function 'REUSE_ALV_VARIANT_EXISTENCE'
exporting
i_save = co_save_u
changing
cs_variant = st_tvariant.
st_variant = st_tvariant.
else.
clear st_variant.
st_variant-report = sy-repid.
endif.
at selection-screen on value-request for p_varint.
Provide display variant list for this program.
call function 'REUSE_ALV_VARIANT_F4'
exporting
is_variant = st_variant
i_save = co_save_u
importing
e_exit = va_exit
es_variant = st_tvariant
exceptions
not_found = 2.
if sy-subrc eq 2.
message id sy-msgid type 'S'
number sy-msgno
with sy-msgv1 sy-msgv2 sy-msgv3 sy-msgv4.
else.
if va_exit eq space.
st_variant = st_tvariant.
p_varint = st_tvariant-variant.
endif.
endif.
At selection screen
at selection-screen.
Load display variant.
if not p_varint is initial.
move st_variant to st_tvariant.
move p_varint to st_tvariant-variant.
call function 'REUSE_ALV_VARIANT_EXISTENCE'
exporting
i_save = co_save_u
changing
cs_variant = st_tvariant.
st_variant = st_tvariant.
else.
clear st_variant.
st_variant-report = sy-repid.
endif.
Start of selection
Extract order details from VBAK
select vbeln erdat auart faksk netwr waerk vkorg vtweg vkbur fkara
kunnr xblnr
from vbak
into table it_vbak
where vkorg in s_vkorg
and vkbur in s_vkbur
and vbeln in s_vbeln.
if sy-subrc ne 0.
No data found for selection
message s001(zgen).
exit.
endif.
loop at it_vbak into wa_vbak.
va_tabix = sy-tabix.
wa_vbak-objectid = wa_vbak-vbeln.
modify it_vbak from wa_vbak
index va_tabix
transporting objectid.
endloop.
if sy-subrc ne 0.
No data found for selection
message s001(zgen).
exit.
endif.
loop at it_vbak into wa_vbak.
va_tabix = sy-tabix.
wa_vbak-objectid = wa_vbak-vbeln.
modify it_vbak from wa_vbak
index va_tabix
transporting objectid.
endloop.
Extract Change data
select objectclas objectid changenr username udate utime tcode
from cdhdr
into table it_cdhdr
for all entries in it_vbak
where objectclas eq co_objectclas_verkbeleg
and objectid eq it_vbak-objectid
and username in s_usrnme
and udate in s_udate.
if sy-subrc eq 0.
select objectclas objectid changenr tabname tabkey fname chngind
value_new value_old
from cdpos
into table it_cdpos
for all entries in it_cdhdr
where fname NE 'CMPRE_FLT'
and objectclas eq it_cdhdr-objectclas
and objectid eq it_cdhdr-objectid
and changenr eq it_cdhdr-changenr.
endif.
Extract customer details from KNA1
select kunnr name1
from kna1
into table it_kna1
for all entries in it_vbak
where kunnr eq it_vbak-kunnr.
---- Changes are made here -
Extract Material details from vbap
select matnr arktx
from vbap
into table it_vbap
for all entries in it_vbak
where
vbeln eq it_vbak-vbeln
and posnr eq co_posnr_initial.
-----------------End of Change ----------------------*
Extract Contract No from vbkd.
select vbeln posnr fbuda
from vbkd
into table it_vbkd
for all entries in it_vbak
where vbeln eq it_vbak-vbeln
and posnr eq co_posnr_initial.
perform merge_data tables it_cdhdr
it_cdpos
it_kna1
it_user_addr
it_merged
it_vbak
it_vbap
it_vbkd.
if it_merged[] is initial.
message s001(zgen).
exit.
endif.
Release memory no longer required.
free: it_cdhdr,
it_cdpos,
it_kna1,
it_user_addr,
it_vbak,
it_vbap,
it_vbkd.
Build field catalog for call to report function
perform build_field_catalog tables it_fieldcat.
Output report.
perform output_report tables it_fieldcat
it_merged.
*& Form merge_data
text
form merge_data tables pa_it_cdhdr type ty_it_cdhdr
pa_it_cdpos type ty_it_cdpos
pa_it_kna1 type ty_it_kna1
pa_it_user_addr type ty_it_user_addr
pa_it_merged type ty_it_merged
pa_it_vbak type ty_it_vbak
pa_it_vbap type ty_it_vbap
pa_it_vbkd type ty_it_vbkd.
Local internal tables
data:
lit_dd03l type ty_it_dd03l,
lit_dd04t type ty_it_dd04t.
Local work areas
data:
lwa_cdhdr type ty_cdhdr,
lwa_cdpos type ty_cdpos,
lwa_dd03l type ty_dd03l,
lwa_dd04t type ty_dd04t,
lwa_kna1 type ty_kna1,
lwa_user_addr type ty_user_addr,
lwa_merged type ty_merged,
lwa_vbak type ty_vbak,
lwa_vbap type ty_vbap,
lwa_vbkd type ty_vbkd.
Local variables
data:
lva_dd03l_tabix like sy-tabix,
lva_dd04t_tabix like sy-tabix.
Sort Data
sort pa_it_cdhdr by objectid changenr.
sort pa_it_cdpos by objectid changenr tabname tabkey fname.
sort pa_it_kna1 by kunnr.
sort pa_it_user_addr by bname.
sort pa_it_vbak by vbeln.
sort pa_it_vbkd by vbeln.
loop at pa_it_vbak into lwa_vbak.
clear lwa_merged.
Assign sales order fields to reporting work area
lwa_merged-vbeln = lwa_vbak-vbeln.
lwa_merged-erdat = lwa_vbak-erdat.
lwa_merged-auart = lwa_vbak-auart.
lwa_merged-faksk = lwa_vbak-faksk.
lwa_merged-netwr = lwa_vbak-netwr.
lwa_merged-waerk = lwa_vbak-waerk.
lwa_merged-vkorg = lwa_vbak-vkorg.
lwa_merged-vtweg = lwa_vbak-vtweg.
lwa_merged-vkbur = lwa_vbak-vkbur.
lwa_merged-fkara = lwa_vbak-fkara.
lwa_merged-kunnr = lwa_vbak-kunnr.
lwa_merged-bname = 1wa_user_addr-bname.
lwa_merged-xblnr = lwa_vbak-xblnr.
Assgin Material to reporting work area
lwa_merged-matnr = lwa_vbap-vbeln.
Get name of sold-to party from PA_IT_KNA1
clear lwa_kna1.
read table pa_it_kna1 into lwa_kna1
with key kunnr = lwa_vbak-kunnr
binary search.
lwa_merged-name1 = lwa_kna1-name1.
Get name from PA_it_user_addr
clear lwa_user_addr.
read table pa_it_user_addr into lwa_user_addr
with key = lwa_user_addr-bname
binary search.
lwa_merged-username = lwa_user_addr-name_textc.
Get business data from PA_IT_VBKD.
clear lwa_vbkd.
read table pa_it_vbkd into lwa_vbkd
with key vbeln = lwa_vbak-vbeln
binary search.
lwa_merged-fbuda = lwa_vbkd-fbuda.
Get Material Data
clear lwa_vbap.
read table pa_it_vbap into lwa_vbap
with key matnr = lwa_vbap-matnr
with key vbeln = lwa_vbak-vbeln
binary search.
lwa_merged-arktx = lwa_vbap-arktx.
Get internal note text for sales order
perform read_text using '0002'
'1'
lwa_merged-vbeln
'VBBK'
lwa_merged-intnote.
Get header note 1 text for sales order
perform read_text using 'Z002'
'1'
lwa_merged-vbeln
'VBBK'
lwa_merged-hdrnote.
Determine if change documents exist for sales order.
clear lwa_cdhdr.
read table pa_it_cdhdr into lwa_cdhdr
with key objectid = lwa_vbak-objectid.
if sy-subrc ne 0.
continue.
endif.
loop at pa_it_cdhdr into lwa_cdhdr
from sy-tabix.
lwa_merged-username = lwa_cdhdr-username.
lwa_merged-udate = lwa_cdhdr-udate.
lwa_merged-utime = lwa_cdhdr-utime.
lwa_merged-tcode = lwa_cdhdr-tcode.
clear lwa_cdpos.
read table pa_it_cdpos into lwa_cdpos
with key objectid = lwa_cdhdr-objectid
changenr = lwa_cdhdr-changenr
binary search.
loop at pa_it_cdpos into lwa_cdpos
from sy-tabix.
lwa_merged-tabname = lwa_cdpos-tabname.
lwa_merged-tabkey = lwa_cdpos-tabkey.
lwa_merged-fname = lwa_cdpos-fname.
lwa_merged-chngind = lwa_cdpos-chngind.
lwa_merged-value_new = lwa_cdpos-value_new.
lwa_merged-value_old = lwa_cdpos-value_old.
Get description for field - determine date element
clear lwa_dd03l.
read table lit_dd03l into lwa_dd03l
with key tabname = lwa_cdpos-tabname
fieldname = lwa_cdpos-fname
binary search.
lva_dd03l_tabix = sy-tabix.
if sy-subrc ne 0.
select single tabname fieldname as4local as4vers rollname
from dd03l
into lwa_dd03l
where tabname eq lwa_cdpos-tabname
and fieldname eq lwa_cdpos-fname
and as4local eq co_as4local_a.
if sy-subrc eq 0.
insert lwa_dd03l into lit_dd03l
index lva_dd03l_tabix.
endif.
endif.
If data element was found, get description
if not lwa_dd03l is initial.
clear lwa_dd04t.
read table lit_dd04t into lwa_dd04t
with key rollname = lwa_dd03l-rollname
ddlanguage = sy-langu
binary search.
lva_dd04t_tabix = sy-tabix.
if sy-subrc ne 0.
select single rollname ddlanguage as4local as4vers scrtext_l
from dd04t
into lwa_dd04t
where rollname eq lwa_dd03l-rollname
and ddlanguage eq sy-langu.
if sy-subrc eq 0.
insert lwa_dd04t into lit_dd04t
index lva_dd04t_tabix.
else.
lwa_dd04t-scrtext_l = 'Description for field not found'.
endif.
endif.
endif.
lwa_merged-scrtext_l = lwa_dd04t-scrtext_l.
append lwa_merged to pa_it_merged.
at end of changenr.
Only process field changes for this change document.
exit.
endat.
endloop.
at end of objectid.
Initialise work area so we know change document for order has
been processed.
clear lwa_merged.
Only process change documents for this sales order.
exit.
endat.
endloop.
endloop.
endform. " merge_data
*& Form build_field_catalog
text
form build_field_catalog tables pa_it_fieldcat type slis_t_fieldcat_alv.
data:
Local variable
lva_col_pos type slis_fieldcat_alv-col_pos,
Local structure
st_fieldcat type slis_fieldcat_alv.
lva_col_pos = 0.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VBELN'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'VBELN'.
st_fieldcat-row_pos = '1'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VKBUR'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'VKBUR'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VKORG'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'VKORG'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'KUNNR'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'KUNNR'.
st_fieldcat-row_pos = '1'.
st_fieldcat-col_pos = lva_col_pos.
st_fieldcat-outputlen = '6'.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'NAME1'.
st_fieldcat-ref_tabname = 'KNA1'.
st_fieldcat-ref_fieldname = 'NAME1'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '15'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'MATNR'.
st_fieldcat-ref_tabname = 'VBAP'.
st_fieldcat-ref_fieldname = 'MATNR'.
st_fieldcat-row_pos = '1'.
st_fieldcat-col_pos = lva_col_pos.
st_fieldcat-outputlen = '6'.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'SCRTEXT_L'.
st_fieldcat-ref_tabname = 'DD04T'.
st_fieldcat-ref_fieldname = 'SCRTEXT_L'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '20'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'UDATE'.
st_fieldcat-ref_tabname = 'CDHDR'.
st_fieldcat-ref_fieldname = 'UDATE'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '10'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'USERNAME'.
st_fieldcat-ref_tabname = 'CDHDR'.
st_fieldcat-ref_fieldname = 'USERNAME'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '6'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'FNAME'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'FNAME'.
st_fieldcat-row_pos = '4'.
st_fieldcat-outputlen = '8'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'CHNGIND'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'CHNGIND'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '8'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'WAERK'.
st_fieldcat-ref_tabname = 'VBAK'.
st_fieldcat-ref_fieldname = 'WAERK'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '5'.
st_fieldcat-col_pos = lva_col_pos..
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VALUE_NEW'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'VALUE_NEW'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '20'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
clear st_fieldcat.
add 1 to lva_col_pos.
st_fieldcat-tabname = 'PA_IT_MERGED'.
st_fieldcat-fieldname = 'VALUE_OLD'.
st_fieldcat-ref_tabname = 'CDPOS'.
st_fieldcat-ref_fieldname = 'VALUE_OLD'.
st_fieldcat-row_pos = '1'.
st_fieldcat-outputlen = '20'.
st_fieldcat-col_pos = lva_col_pos.
append st_fieldcat to pa_it_fieldcat.
endform. " build_field_catalog
*& Form output_report
text
form output_report tables pa_it_fieldcat type slis_t_fieldcat_alv
pa_it_merged type ty_it_merged.
Local variables
data:
lva_formname type slis_formname,
lva_repid like sy-repid.
lva_repid = sy-repid.
lva_formname = 'ALV_USER_COMMAND'.
call function 'REUSE_ALV_GRID_DISPLAY'
exporting
i_callback_program = lva_repid
i_callback_user_command = lva_formname
i_save = 'A'
is_variant = st_variant
it_fieldcat = pa_it_fieldcat[]
tables
t_outtab = pa_it_merged
exceptions
program_error = 1
others = 2.
endform. " output_report
*& Form alv_user_command
text
form alv_user_command using pa_ucomm like sy-ucomm
pa_selfield type slis_selfield.
Local work areas
data:
lwa_merged type ty_merged.
clear lwa_merged.
read table it_merged into lwa_merged
index pa_selfield-tabindex.
case pa_selfield-fieldname.
when 'VBELN'.
Contract Number
set parameter id 'AUN' field lwa_merged-vbeln.
call transaction 'VA03' and skip first screen.
S_BCE_68001393
when 'USERNAME'.
Username
set parameter id 'username' field lwa_merged-username.
call transaction 'S_BCE_68001393' and skip first screen.
when 'KUNNR'.
Customer number
set parameter id 'KUN' field lwa_merged-kunnr.
set parameter id 'VKO' field space.
set parameter id 'VTW' field space.
set parameter id 'SPA' field space.
call transaction 'XD03' and skip first screen.
endcase.
endform. " alv_user_command
*& Form read_text
text
form read_text using pa_id
pa_inline_count
pa_name
pa_object
pa_text.
Local internal tables
data:
lit_inlines type ty_it_lines,
lit_lines type ty_it_lines.
Local work areas
data:
lwa_lines type ty_lines.
Local variables
data:
lva_tdname like thead-tdname.
refresh: lit_inlines,
lit_lines.
lva_tdname = pa_name.
call function 'READ_TEXT_INLINE'
exporting
id = pa_id
inline_count = pa_inline_count
language = sy-langu
name = lva_tdname
object = pa_object
tables
inlines = lit_inlines
lines = lit_lines
exceptions
id = 1
language = 2
name = 3
not_found = 4
object = 5
reference_check = 6
others = 7.
loop at lit_lines into lwa_lines.
concatenate pa_text
lwa_lines-tdline
into pa_text separated by space.
endloop.
endform. " read_text ENDLOOP.Hi
As per your code here:
"-------------- Changes are made here ----------------
*Extract Material details from vbap
select matnr arktx
from vbap
into table it_vbap
for all entries in it_vbak
where
vbeln eq it_vbak-vbeln
and posnr eq co_posnr_initial. " Here the condition specifies you want to select sales order items where there is no item number, which i beleive shouldnt be the case
" -----------------End of Change ----------------------
Try as below by commenting the Item Number is INITIAL condition:
select matnr arktx
from vbap
into table it_vbap
for all entries in it_vbak
where
vbeln eq it_vbak-vbeln.
"and posnr eq co_posnr_initial.
Regards
Eswar -
ORA-01403: no data found . Error Unable to fetch row
Hi
I have a form that, when inserting a new record, should submit the form but remain in the same page with the same info. I have set up the "after processing" branch (unconditional) to redirect to that specific page (page 5), the "reset pagination for this page" option selected and "clear cache" option empty. What happens is that, when inserting a new record, i get error ORA-01403 indicating that it's unable to fetch the record. Although i get this error, the new record is inserted in the DB... I have also selected option "Only when current value in session state is null" for source used for all fields of form. What am i doing wrong? I thank in advance all replies!Hi again
Because you have a trigger on the table that selects the current max(ID)+1, when creating the form you should have used "Existing Trigger"when defining the source for the primary key, not "Existing Sequence". You should also change the trigger to use the sequence.NEXTVAL for the ID.
When you created the form using "Exisitng Sequence", Apex would have created a "Get PK" process which gets the primary key value from the sequence before passing control to the DML process. You should delete the Get PK process and let the database trigger do it's job.
In the DML process, set "Item Containing Primary Key Column Value" to the page item name e.g. "P5_ID", and set "Primary Key Column" to "ID" (the name of your table column).
That should do the trick.
Cheers
Richard
Message was edited by:
Richard. -
Unable to fetch columns; Invalid state/No Suitable Driver
Hi!
I'm trying to populate a combo box with data from a MySQL database (or any other database for that matter), I create a JDBC connection source, and set the following:
URL = jdbc:mysql://localhost:3306/test
Driver = org.mysql.jdbc.Driver (i have also tried org.gjt.mm.mysql.Driver)
Username = anonymous
Password = <blank>
Next I create a NBJdbcRowSet and set:
Command = SELECT * FROM foo
Connection Provider = connectionSource1 (the above connection source)
Now if I click the elipses next to Default Column Values, I get the message 'Unable to fetch columns; Invalid State'
If I replace the NBJDBCRowSet with a NBCachedRowSet, the error becomes 'Unable to fetch columns; No Suitable Driver'.
The database is browseable in the runtime tab, and the table exists (I can run SQL queries and get the expected results). The anonymous account exists and has access to the tables in question (the same setup is used in a few different applications, all of which work fine). Using the root account gives the same results. Using the PointBase example database gives the same results:
Driver: com.pointbase.jdbc.jdbcUniversalDriver
URL: jdbc:pointbase:server://localhost:9092/sample
Details of setup:
OS: Windows XP Pro SP2
IDE: Sun Java Studio Enterprise 7 2004Q4
Java version in use: 1.4.2_05 (as packaged with the studio)
MySQL: v5.0.7-beta-nt
Connector: MySQL Connector/J 3.0.17-ga
PointBase: As came with Studio Enterprise
I should mention that I can get DB connectivity in my app, I can create a comboBox and set the model to 'nBCachedRowSet1: name' and the contents of that field appears in my comboBox, however I need to create about a dozen tables and I don't relish the thought of manually creating models for each one ;)
Any suggestions are appreciated!
Cheers!
DarrenHi Thanks for your reply.
I've retried with PointBase and the Sample DB:
* New project. New JFrame.
* Create ConnectionSource, NBJdbcRowSet, ComboBox
* Config ConnectionSource:
- Driver: com.pointbase.jdbc.jdbcUniversalDriver
- URL: jdbc:pointbase:server://localhost:9092/sample
- Username/pass: as per PointBase setup
* Config NBJdbcRowSet
- ConnectionProvider: connectionSource1
- Command: SELECT * FROM CUSTOMERINFO
- Default Column Values: <open GUI>, <Fetch Columns>, "Unable to fetch columns; Invalid State"
So this is where I get the problem, I'm not sure if i've buggered it up though, so I continue to see if I can get data:
- Add Column: NAME
- OK, Close
* Config ComboBox
- Open Model dialog
- Select Mode: ComboBoxEditor
- RowSet: nBJdbcRowSet1 (this throws the error again)
- Column: NAME (entered manually, dropdown is empty)
- OK, Close
* Run app
Errors!
Seems like the GUI builder did something wrong - it generated a bunch of functions for each thing i added, like this:
public void setJComboBox1(JComboBox val) {
this.jComboBox1 = val;
and the project won't compile. I figure out it should be like this:
public void setJComboBox1(javax.swing.JComboBox val) {
this.jComboBox1 = val;
but the functions aren't doing anything anyway, so I delete them all. I'm starting to think my installation is borked.
Project now compiles and runs, but there's no data, and I get:
ClassNotFoundException: com.pointbase.jdbc.jdbcUniversalDriver
At this point i should probably find the jar with that driver in it and mount this/add it to the classpath, but the boss has decided we'll use Borland Delphi 2005 .NET anyways, so I won't take this any further...
Thanks for your help guys!
Darren -
TMADMIN_CAT:1607: ERROR: Unable to initialize public key subsystem
Hi All,
I have installed HCM 9 with 8.49.08 PeopleTools on CentOS 5.3 Linux. Everything went fine (I have completed the creation of database) until I am about to start the application server that I have just created. I am getting this error, "TMADMIN_CAT:1607: ERROR: Unable to initialize public key subsystem".
@Nicolas
I have followed the instructions in your blog (it's very helpful). However I am now stack with this error.
Screenshot of the error after trying to boot the appserv:
PeopleSoft Domain Boot Menu
Domain Name: DMHCM
1) Boot (Serial Boot)
2) Parallel Boot
q) Quit
Command to execute (1-2, q) [q]: 1
psappsrv.cfg has changed archiving old one...
Copying DMHCM/Archive/psappsrv.cfg to DMHCM/Archive/psappsrv_092509_0140_32.cfg
Attempting to boot bulletin board...
tmadmin - Copyright (c) 1996-1999 BEA Systems, Inc.
Portions * Copyright 1986-1997 RSA Data Security, Inc.
All Rights Reserved.
Distributed under license by BEA Systems, Inc.
Tuxedo is a registered trademark.
TMADMIN_CAT:1607: ERROR: Unable to initialize public key subsystem
==============ERROR!================
Boot attempt encountered errors!. Check the TUXEDO log for details.
==============ERROR!================
Do you wish to see the error messages in the APPSRV.LOG file? (y/n) [n] :
Here the content of the ULOG:
CentOSLinux:psoft /applications/speople/pt849/appserv >tail ULOG.092509
014032.CentOSLinux!tmadmin.24422.3086362304.-2: 09-25-2009: Tuxedo Version 9.1, 32-bit
014032.CentOSLinux!tmadmin.24422.3086362304.-2: GP_CAT:1345: ERROR: pif: can't load 'registry.so'
014032.CentOSLinux!tmadmin.24422.3086362304.-2: LIBSEC_CAT:22: ERROR: Unable to realize the ecsec_map_proof interface implementation native/security/map_proof. Error code (-5000)
014032.CentOSLinux!tmadmin.24422.3086362304.-2: LIBTUX_CAT:6275: ERROR: Unable to initialize public key subsystem (-3003)
014032.CentOSLinux!tmadmin.24422.3086362304.-2: LIBTUX_CAT:6204: ERROR: Could not initialize public key subsystem
020404.CentOSLinux!tmadmin.25119.3086403264.-2: 09-25-2009: Tuxedo Version 9.1, 32-bit
020404.CentOSLinux!tmadmin.25119.3086403264.-2: GP_CAT:1345: ERROR: pif: can't load 'registry.so'
020404.CentOSLinux!tmadmin.25119.3086403264.-2: LIBSEC_CAT:22: ERROR: Unable to realize the ecsec_map_proof interface implementation native/security/map_proof. Error code (-5000)
020404.CentOSLinux!tmadmin.25119.3086403264.-2: LIBTUX_CAT:6275: ERROR: Unable to initialize public key subsystem (-3003)
020404.CentOSLinux!tmadmin.25119.3086403264.-2: LIBTUX_CAT:6204: ERROR: Could not initialize public key subsystem
This seems to be the main culprit... GP_CAT:1345: ERROR: pif: can't load 'registry.so' and I have searched this forum and found several suggestions like make sure that LD_LIBRARY_PATH is correctly set .. incorrect permssions, delete the .adm ... etc. I have done all of this suggestions. I even re-installed the Tuxedo 9.1 with the assumption that some files like resistry,.so might have been corrupted but this all did not resolved the issue. I believe I have done my I could before going here asking for help.
Here is the content of my .bash_profile:
# .bash_profile
PS1='CentOSLinux:$USER $PWD >'
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
PATH=$PATH:$HOME/bin
export PATH
unset USERNAME
export BEA=/applications/speople/bea
export TUXDIR=/applications/speople/bea/tuxedo91
export BEA_HOME=/applications/speople/bea/weblogic92
export ORACLE_HOME=/applications/oracle/10.2.0
export PATH=$PATH:$ORACLE_HOME/bin
LD_LIBRARY_PATH=$ORACLE_HOME/lib; export LD_LIBRARY_PATH
LIBPATH=$TUXDIR/lib:$LIBPATH:/usr/lib; export LIBPATH
export PS_HOME=/applications/speople/pt849
. $PS_HOME/psconfig.sh
I would really appreciate any help on this issue. Many thanks.Please, check if you have the following RPM installed :
[root@centos ~]# more /etc/redhat-release
CentOS release 5.3 (Final)
[root@centos ~]# rpm -q compat-libstdc++-33-3.2.3-61.i386
compat-libstdc++-33-3.2.3-61
[root@centos ~]#I tested it on CentOS5.3, everything is working fine. Please, see below all the installation steps :
1. Install CentOS 5.3 with all the default settings
2. Install Tuxedo
2.1 => Modify the file ./linux/sles9/base/tuxedo91_32_SLES_9_x86.bin
mv ./linux/sles9/base/tuxedo91_32_SLES_9_x86.bin /tmp/tuxedo91_32_SLES_9_x86.bin
cat /tmp/tuxedo91_32_SLES_9_x86.bin|sed 's/export LD_ASSUME_KERNEL/#xport LD_ASSUME_KERNEL/' > ./linux/sles9/base/tuxedo91_32_SLES_9_x86.bin2.2 => Download and install JDK5
./jdk-1_5_0_21-linux-i586-rpm.bin
For inquiries please contact: Sun Microsystems, Inc., 4150
Network Circle, Santa Clara, California 95054, U.S.A.
(LFI#143333/Form ID#011801)
Do you agree to the above license terms? [yes or no]
yes
Unpacking...
Checksumming...
0
0
Extracting...
UnZipSFX 5.50 of 17 February 2002, by Info-ZIP ([email protected]).
inflating: jdk-1_5_0_21-linux-i586.rpm
Preparing... ########################################### [100%]
1:jdk ########################################### [100%]
Done.
[root@centos JDK5]# # /usr/sbin/alternatives --install /usr/bin/java java /usr/java/jdk1.5.0_21/bin/java 2
[root@centos JDK5]# /usr/sbin/alternatives --config java
There are 4 programs which provide 'java'.
Selection Command
* 1 /usr/lib/jvm/jre-1.6.0-openjdk/bin/java
2 /usr/lib/jvm/jre-1.4.2-gcj/bin/java
+ 3 /usr/java/jdk1.5.0_16/bin/java
4 /usr/java/jdk1.5.0_21/bin/java
Enter to keep the current selection[+], or type selection number: 4
[root@centos JDK5]# java -version
java version "1.5.0_21"
Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0_21-b01)
Java HotSpot(TM) Client VM (build 1.5.0_21-b01, mixed mode, sharing)
[root@centos JDK5]#2.3 => Modify the file install.sh
The line
sh $INSTALL_BINARY -f $SILENT_INSTALL_FILE > $INSTALLER_OUTPUT;becomes
sh $INSTALL_BINARY LAX_VM /usr/java/jdk1.5.0_21/jre/bin/java -f $SILENT_INSTALL_FILE > $INSTALLER_OUTPUT;2.4 => run the Tuxedo Installer
sh ./install.sh3. Install Peopletools
4. Install the RPM (from the CentOS 5.3 DVD) - this is required for psadmin
rpm -Uvh compat-libstdc++-33-3.2.3-61.i386.rpm5. Install additional RPMs for Oracle
rpm -Uvh libXp-1.0.0-8.1.el5.i386.rpm
rpm -Uvh kernel-headers-2.6.18-128.el5.i386.rpm
rpm -Uvh glibc-headers-2.5-34.i386.rpm
rpm -Uvh glibc-devel-2.5-34.i386.rpm
rpm -Uvh compat-gcc-34-3.4.6-4.i386.rpm
rpm -Uvh libgomp-4.3.2-7.el5.i386.rpm
rpm -Uvh gcc-4.1.2-44.el5.i386.rpm
rpm -Uvh gcc-c++-4.1.2-44.el5.i386.rpm
rpm -Uvh compat-glibc-headers-2.3.4-2.26.i386.rpm
rpm -Uvh compat-glibc-2.3.4-2.26.i386.rpm
rpm -Uvh glibc-utils-2.5-34.i386.rpm
rpm -Uvh compat-db-4.2.52-5.1.i386.rpm
rpm -Uvh compat-gcc-34-c++-3.4.6-4.i386.rpm
rpm -Uvh compat-libstdc++-296-2.96-138.i386.rpm
rpm -Uvh gcc43-4.3.2-7.el5.i386.rpm
rpm -Uvh gcc43-c++-4.3.2-7.el5.i386.rpm6. Install Oracle (database or client depending of the config)
6.1 => add the entry in tnsnames.ora
6.2 => create the symbolic link
[oracle@centos oracle]$ cd $ORACLE_HOME/lib
[oracle@centos lib]$ ln -s libclntsh.so libclntsh.so.9.06.3 => make the ORACLE_HOME readable and executable for everbody
7. psoft user
7.1 => The .bash_profile
[psoft@centos ~]$ more .bash_profile
# .bash_profile
# Get the aliases and functions
if [ -f ~/.bashrc ]; then
. ~/.bashrc
fi
# User specific environment and startup programs
export ORACLE_HOME=/oracle/10.2
PATH=$PATH:$HOME/bin:$ORACLE_HOME/bin
export PATH
export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:$ORACLE_HOME/lib
export PS_HOME=/psoft/psoft849
. $PS_HOME/psconfig.sh
[psoft@centos ~]$7.2 => Modify the file $PS_HOME/psconfig.sh
PS_HOSTTYPE=redhat-4-ia32;export PS_HOSTTYPE8. psadmin, create the new domain, and start
PeopleSoft Domain Boot Menu
Domain Name: DMOHRMS9
1) Boot (Serial Boot)
2) Parallel Boot
q) Quit
Command to execute (1-2, q) [q]: 1
psappsrv.cfg has changed archiving old one...
Copying DMOHRMS9/Archive/psappsrv.cfg to DMOHRMS9/Archive/psappsrv_092609_1218_35.cfg
Attempting to boot bulletin board...
tmadmin - Copyright (c) 1996-1999 BEA Systems, Inc.
Portions * Copyright 1986-1997 RSA Data Security, Inc.
All Rights Reserved.
Distributed under license by BEA Systems, Inc.
Tuxedo is a registered trademark.
No bulletin board exists. Entering boot mode.
INFO: BEA Tuxedo, Version 9.1, 32-bit, Patch Level 036
INFO: Serial #: 650522264137-2065448083901, Expiration NONE, Maxusers 1000000
INFO: Licensed to: Oracle-Peoplesoft-ISV
Booting admin processes ...
exec BBL -A :
process id=26552 ... Started.
1 process started.
Attempting to boot ...
INFO: BEA Tuxedo, Version 9.1, 32-bit, Patch Level 036
INFO: Serial #: 650522264137-2065448083901, Expiration NONE, Maxusers 1000000
INFO: Licensed to: Oracle-Peoplesoft-ISV
Booting server processes ...
exec PSWATCHSRV -A -- -ID 176290 -C psappsrv.cfg -D DMOHRMS9 -S PSWATCHSRV :
process id=26555 ... Started.
exec PSAPPSRV -s@../psappsrv.lst -s@../psqcksrv.lst -sICQuery -sSqlQuery:SqlRequest -- -C psappsrv.cfg -D DMOHRMS9 -S PSAPPSRV :
process id=26556 ... Started.
exec PSAPPSRV -s@../psappsrv.lst -s@../psqcksrv.lst -sICQuery -sSqlQuery:SqlRequest -- -C psappsrv.cfg -D DMOHRMS9 -S PSAPPSRV :
process id=26560 ... Started.
exec PSAPPSRV -s@../psappsrv.lst -s@../psqcksrv.lst -sICQuery -sSqlQuery:SqlRequest -- -C psappsrv.cfg -D DMOHRMS9 -S PSAPPSRV :
process id=26564 ... Started.
exec PSSAMSRV -A -- -C psappsrv.cfg -D DMOHRMS9 -S PSSAMSRV :
process id=26568 ... Started.
exec PSMONITORSRV -A -- -ID 176290 -C psappsrv.cfg -D DMOHRMS9 -S PSMONITORSRV :
process id=26571 ... Started.
exec JSL -A -- -d unused -n //centos.phoenix-nga:9000 -m 1 -M 3 -I 5 -j ANY -x 40 -S 10 -c 1000000 -w JSH :
process id=26574 ... Started.
exec JREPSVR -A -- -W -P /psoft/psoft849/appserv/DMOHRMS9/jrepository :
process id=26576 ... Started.
8 processes started.HTH,
Nicolas. -
Configure SAP ABAP as service provider using SAML holder-of-key
Hi
We are trying to configure "SAML Holder of key" between Microsoft (as
a service consumer) and SAP ABAP (as service provider).
The service provider/SAP ABAP is release 7.11 and we need to configure this component.
We have found SAP note 1254821 and are trying to follow the instructions for
the "SAML Holder of key" scenario:
However there is one step that we do not understand: step 5 "The private key to decrypt the
encrypted....at the provider system must be a WS Security Identity in transaction TRUST"
Anyone who can elaborate of the meaning of this step and describe a procedure for what
exactly to do?
BR
Tom BoHi,
a service provider needs to check two things when processing message. The first thing is that SAML assertion was issued by STS by checking signature of SAML assertion. The SAML assertion is signed by STS (step 4 in OSS note). The second thing is to verify that sender knows key from SubjectConfirmation element (that's why it is called holder of key). One way is to encrypt and sign SOAP message using symmetric key. There is also option to use asymmetric key. The key is encrypted by STS using the public key of service provider. Therefore the private key must be imported in service provider system (step 5 from OSS note). More info can be found [here|http://help.sap.com/saphelp_nw73/helpdata/en/e5/9f9913fc9c418db98c8693b2bbdb7c/frameset.htm].
Cheers -
Form apply changes results in Unable to fetch custom authentication functio
created a simple form/report application using the wizard and no modification of any kind and I can do everything except apply changes to any field on form screen -
got the following error:
Unable to fetch custom authentication function body in application - HTTP 500 Internal Server Error
any ideas??
Thanks.I am using data base account.
more info:
the table I am working with is an existing table with large number of columns. to simplify testing I created the following table as a select from original table:
CREATE TABLE APPS.FGS_TEMP_2
TASK_ID NUMBER(15) NOT NULL,
PROJECT_ID NUMBER(15),
TASK_NUMBER VARCHAR2(25 BYTE) NOT NULL
CREATE UNIQUE INDEX APPS.FGS_TEMP_2_IDX1 ON APPS.FGS_TEMP_2
(TASK_ID)
LOGGING
ALTER TABLE APPS.FGS_TEMP_2 ADD (
CONSTRAINT FGS_TEMP_2_CON
PRIMARY KEY
(TASK_ID)
USING INDEX APPS.FGS_TEMP_2_IDX1);
and again used wizard to create a simple tabular form to view and edit - now I am able to edit and apply changes to PROJECT_ID , TASK_NUMBER but not TASK_ID ?? which I guess is a different problem.
here is the table I am trying to create the form for to edit and add - this is an existing table with few thousands rows.
CREATE TABLE HED.EDD_CPR_EMP
EDD_CPR_ID NUMBER NOT NULL,
UNIQUE_PAYROLL_ID VARCHAR2(10 BYTE) NOT NULL,
CPR_PERSON_ID NUMBER,
LEGACY_PAYROLL VARCHAR2(7 BYTE),
GEN_LEGACY_PAYROLL_FLAG VARCHAR2(1 BYTE),
LOGIN_ID VARCHAR2(7 BYTE),
BEMS_ID VARCHAR2(10 BYTE),
STD_USER_ID VARCHAR2(10 BYTE),
STD_UNIX_ID VARCHAR2(10 BYTE),
CMS_PERSON_ID NUMBER,
PERSON_TITLE VARCHAR2(10 BYTE),
FIRST_NAME VARCHAR2(30 BYTE),
MIDDLE_INITIAL VARCHAR2(1 BYTE),
LAST_NAME VARCHAR2(40 BYTE),
SUFFIX VARCHAR2(10 BYTE),
EXT_FULL_NAME VARCHAR2(80 BYTE),
KNOWN_AS VARCHAR2(30 BYTE),
ORIGINAL_HIRE_DATE DATE,
BENEFIT_DATE DATE,
LAST_HIRE_DATE DATE,
HIRE_CODE VARCHAR2(30 BYTE),
HIRE_CODE_DESC VARCHAR2(30 BYTE),
TERMINATION_DATE DATE,
TERMINATION_REASON_CODE VARCHAR2(3 BYTE),
TERMINATION_REASON_DESC VARCHAR2(30 BYTE),
LAST_DAY_WORKED DATE,
BADGE_EXPIRATION_DATE DATE,
ACCT_BUSINESS_UNIT VARCHAR2(2 BYTE),
ACCT_LOCATION VARCHAR2(2 BYTE),
ACCT_DEPARTMENT VARCHAR2(4 BYTE),
ACCT_BUSINESS_UNIT_DESC VARCHAR2(30 BYTE),
ACCT_LOCATION_DESC VARCHAR2(30 BYTE),
ACCT_DEPARTMENT_DESC VARCHAR2(30 BYTE),
HR_DEPARTMENT VARCHAR2(10 BYTE),
HR_ORG_LEVEL_CODE VARCHAR2(15 BYTE),
HR_ORG_STRUCTURE_CODE VARCHAR2(12 BYTE),
HR_ORG_FUNCTION_CODE VARCHAR2(2 BYTE),
HR_DEPARTMENT_DESC VARCHAR2(30 BYTE),
HR_ORG_LEVEL_DESC VARCHAR2(30 BYTE),
HR_ORG_STRUCTURE_DESC VARCHAR2(51 BYTE),
HR_ORG_FUNCTION_DESC VARCHAR2(30 BYTE),
HR_PARENT_DEPARTMENT VARCHAR2(10 BYTE),
US_PERSON_STATUS VARCHAR2(30 BYTE),
SHIFT VARCHAR2(1 BYTE),
SCHEDULED_WORK_WEEK_HOURS VARCHAR2(3 BYTE),
PART_TIME_CODE VARCHAR2(1 BYTE),
EXPLICIT_EMAIL_ADDRESS VARCHAR2(240 BYTE),
STABLE_EMAIL_ADDRESS VARCHAR2(240 BYTE),
URL_ADDRESS VARCHAR2(240 BYTE),
PERSON_STATUS_CODE VARCHAR2(1 BYTE),
PERSON_STATUS_DESC VARCHAR2(12 BYTE),
PERSON_TYPE_CODE VARCHAR2(1 BYTE),
PERSON_TYPE_DESC VARCHAR2(16 BYTE),
HRMS_STATUS_CODE VARCHAR2(1 BYTE),
HRMS_STATUS_DESC VARCHAR2(30 BYTE),
MANAGER_BEMS_ID VARCHAR2(10 BYTE),
MANAGER_NAME VARCHAR2(85 BYTE),
SJC_OCCUPATION_CODE VARCHAR2(2 BYTE),
SJC_JOB_FAMILY_CODE VARCHAR2(2 BYTE),
SJC_FLSA_CODE VARCHAR2(1 BYTE),
SJC_LEVEL_CODE VARCHAR2(1 BYTE),
SJC_SMC_CODE VARCHAR2(3 BYTE),
EEO1_CAT_CODE VARCHAR2(1 BYTE),
SJC_OCCUPATION_DESC VARCHAR2(25 BYTE),
SJC_JOB_FAMILY_DESC VARCHAR2(25 BYTE),
SJC_FLSA_DESC VARCHAR2(30 BYTE),
SJC_SMC_DESC VARCHAR2(25 BYTE),
EEO1_CAT_DESC VARCHAR2(25 BYTE),
HOURLY_JOB_CODE VARCHAR2(5 BYTE),
JOB_TITLE VARCHAR2(60 BYTE),
HOURLY_GRADE VARCHAR2(2 BYTE),
HOURLY_UNION_CODE VARCHAR2(20 BYTE),
HOURLY_UNION_DESC VARCHAR2(60 BYTE),
DIRECT_INDIRECT_CODE VARCHAR2(1 BYTE),
MANAGEMENT_LEVEL_CODE VARCHAR2(1 BYTE),
MANAGEMENT_LEVEL_DESC VARCHAR2(30 BYTE),
TEMPORARY_ASSIGNMENT_CODE VARCHAR2(1 BYTE),
WORK_SCHEDULE_CODE VARCHAR2(30 BYTE),
ROLE_TYPE VARCHAR2(1 BYTE),
ROLE_DESCRIPTION VARCHAR2(13 BYTE),
PERSON_CREATION_DATE DATE,
PERSON_LAST_UPDATE_DATE DATE,
LOCATION1_BUILDING_NUMBER VARCHAR2(6 BYTE),
LOCATION1_FLOOR_NUMBER VARCHAR2(6 BYTE),
LOCATION1_ROOM_NUMBER VARCHAR2(6 BYTE),
LOCATION1_STREET_ADDRESS1 VARCHAR2(60 BYTE),
LOCATION1_STREET_ADDRESS2 VARCHAR2(60 BYTE),
LOCATION1_STREET_ADDRESS3 VARCHAR2(60 BYTE),
LOCATION1_CITY VARCHAR2(30 BYTE),
LOCATION1_STATE VARCHAR2(2 BYTE),
LOCATION1_POSTAL_CODE VARCHAR2(30 BYTE),
LOCATION1_COUNTRY VARCHAR2(70 BYTE),
LOCATION1_LAST_UPDATE_DATE DATE,
LOCATION2_BUILDING_NUMBER VARCHAR2(6 BYTE),
LOCATION2_FLOOR_NUMBER VARCHAR2(6 BYTE),
LOCATION2_ROOM_NUMBER VARCHAR2(6 BYTE),
LOCATION2_STREET_ADDRESS1 VARCHAR2(60 BYTE),
LOCATION2_STREET_ADDRESS2 VARCHAR2(60 BYTE),
LOCATION2_STREET_ADDRESS3 VARCHAR2(60 BYTE),
LOCATION2_CITY VARCHAR2(30 BYTE),
LOCATION2_STATE VARCHAR2(2 BYTE),
LOCATION2_POSTAL_CODE VARCHAR2(30 BYTE),
LOCATION2_COUNTRY VARCHAR2(70 BYTE),
LOCATION2_LAST_UPDATE_DATE DATE,
MAIL1_SITE_CODE VARCHAR2(3 BYTE),
MAIL1_STATION VARCHAR2(10 BYTE),
MAIL1_LAST_UPDATE_DATE DATE,
MAIL2_SITE_CODE VARCHAR2(3 BYTE),
MAIL2_STATION VARCHAR2(10 BYTE),
MAIL2_LAST_UPDATE_DATE DATE,
WORK_PHONE1 VARCHAR2(20 BYTE),
WORK_PHONE1_LAST_UPDATE_DATE DATE,
WORK_PHONE2 VARCHAR2(20 BYTE),
WORK_PHONE2_LAST_UPDATE_DATE DATE,
CELLULAR1 VARCHAR2(20 BYTE),
CELLULAR1_LAST_UPDATE_DATE DATE,
CELLULAR2 VARCHAR2(20 BYTE),
CELLULAR2_LAST_UPDATE_DATE DATE,
PAGER1 VARCHAR2(20 BYTE),
PAGER1_PIN VARCHAR2(30 BYTE),
PAGER1_LAST_UPDATE_DATE DATE,
PAGER2 VARCHAR2(20 BYTE),
PAGER2_PIN VARCHAR2(30 BYTE),
PAGER2_LAST_UPDATE_DATE DATE,
PAGER3 VARCHAR2(20 BYTE),
PAGER3_PIN VARCHAR2(30 BYTE),
PAGER3_LAST_UPDATE_DATE DATE,
FAX VARCHAR2(20 BYTE),
FAX_LAST_UPDATE_DATE DATE,
CREATED_BY NUMBER,
CREATION_DATE DATE,
LAST_UPDATED_BY NUMBER,
LAST_UPDATE_DATE DATE,
REQUEST_ID NUMBER(15),
PROGRAM_APPLICATION_ID NUMBER(15),
PROGRAM_ID NUMBER(15),
PROGRAM_UPDATE_DATE DATE,
LAST_UPDATE_LOGIN NUMBER,
WIN2K_CREATED_BY VARCHAR2(25 BYTE),
WIN2K_UPDATED_BY VARCHAR2(25 BYTE),
L3_EMP_ID VARCHAR2(9 BYTE),
MANAGER_CPR_ID NUMBER,
SALARY_JOB_CODE VARCHAR2(10 BYTE),
JOB_FLSA VARCHAR2(10 BYTE),
BADGE_NUMBER VARCHAR2(50 BYTE)
Thanks for the help.
Maybe you are looking for
-
"Cannot send email from this device"?
I recently purchased the Easy Release App from the ITunes store and when I try to email the release to my email address it says "Cannot send email from this device". Is it the app that is preventing the sending or is it something to do with the iPod?
-
Macbook Pro 13 inch (2011) freezes all the time
Hi all , About a week ago, I started to experience difficulties working on my MacBook Pro - the whole system started to "freeze" and glitch all over the place, e.g. finder not responding like it should be, opening folders takes ages (in some cases up
-
How to..Show a wait dialog when data loads, then hide once data loads
Description: This code will have the SAP default wait dialog become visible when the page loads and hidden after the data is returned for the table. 1. Place this code within the head tags. <head> <SCRIPT Language="JavaScript"> function show_wait_dia
-
Iweb FTP,Printing probems with Iweb .Pages to Web
I feel like writing Steve Jobs.Problems -I had Iweb 08 , upgraded to Iweb09 because of the press how FTP was solved. I cannot upload to my server. I have spent hours talking to Apple Care reps.I have tried several FTP softwares other than Iweb.One re
-
I usually had a homepage with the firefox banner at the top. This provided printer access, google, file, etc.. I cannot navigate out of my home page since this info is no longer at the top.