Oracle 9i , what starts the server process

I'm reading the documentation about the server process which communicates with the client process eg sqlplus. But I'm not sure about how the server process is started. Imagine a server where the instance is not running . I log in via sqlplus /nolog , connect as sysdba and execute the startup command. According to the documentation it is the server process which starts the instance , but what starts the server process. Perhaps it is the sqlplus process. And if i log in using sqlplus over the network , I communicate with the listner, in this case is it the listener which starts the server process. ?
George

Hi,
Take a look:
"... Some user processes cannot communicate with the dispatcher, so the network listener process cannot connect them to a dispatcher. In this case, or if the user process requests a dedicated server, the listener creates a dedicated server and establishes an appropriate connection."
Oracle® Database Concepts 10g Release 2 (10.2)
Process Architecture
http://download-east.oracle.com/docs/cd/B19306_01/server.102/b14220/process.htm#i21918
How Do Listeners Respond to Connection Requests
The listener can spawn a new process and pass control of the client session to the process. In a dedicated server environment, every client connection is serviced by its own server-side process. Server-side processes are not shared among clients. Depending on the capabilities of the operating system, two types of dedicated server connections are possible: bequeath connections and redirect connections. Each results in a separate process that handles client processing, but the mechanics of the actual connection initiation process are different.
Cheers

Similar Messages

  • Confused about who/what starts the dgraph process(es)

    After the initial set up the data loading scripts started the dgraph processes. (That is what it seemed like, as they started after those scripts were run.)
    But now they start when the Platform Services (aka EAC) is started.
    And a second part to this question - when the dgraphs start they already have data loaded. Where did they get that data? Don't the data loading scripts need to be run for them to have any data?

    (Guess I can't delete that post.)
    Coworker answered my questions. Once the data is grabbed/processed from the relational db, it is kept in flat files. These are used by the dgraph process when it starts. After the very first data load the dgraphs are started by the EAC.

  • Oracle Error when starting the WLI server (samples domain) on Windows XP

    I've installed WLI (SP2) on Windows XP and after Starting the Server (from the
    "Start Server and Launch Examples" commands on the start menu) I get the following
    Oracle error in the console:
    I'm using WLI 7.0 with SP2 and Oracle 9i on Windows XP Home.
    ORA-12154: TNS:could not resolve service name
    Any ideas?

    Hi Peter,
    Based on the error messages it looks like this might be a Windows 7 security issue, which would be why it doesn't occur on XP since security is handled differently in that OS. Have you gone into dcomcnfg.exe and checked the DCOM permissions as described in the error message?

  • The server process could not be started because the configured identity is incorrect

    Good morning
    I have the same problem as here, every moning i must writing pasword.
    https://social.msdn.microsoft.com/Forums/en-US/f95ee480-dda1-42fd-96af-596531e7ac2e/the-server-process-could-not-be-started-because-the-configured-identity-is-incorrect?forum=windowstransactionsprogramming
    But my configuration is the same as was answer in this post, may be you can help me with another idea?. Thanks.
    Windows 2008 R2 64Bit

    Both machines start with an automatic login so technically there is an interactive user.
    Nevertheless, it is an interesting point. i will try to configure the applications to run under a particular user and see if that changes anything.
    Thank you
    Peter

  • Error in starting WebLogic Server Process

    Hi,
    I'm suffering a serious sproblem that results in failure in starting WebLogic
    Server Processes. What i'm trying is to use "PostBindUID" nad "PostBindGID" services
    that changes the processes owner from "root" to "somebody". However, once i set
    it in Console (Configure a new Unix Machine), the server cannot start afterwards
    with the following errors in the screen (when i execute startWebLogic.sh) ...
    An unexpected exception has been detected in native code outside the VM.
    Unexpected Signal : 11 occurred at PC=0x917116B8
    Function=Java_weblogic_platform_Unix_getEGroup0+0x28
    Library=/opt/weblogic/bea/weblogic81/server/lib/solaris/libweblogicunix1.so
    Current Java thread:
    at weblogic.platform.Unix.getEGroup0(Native Method)
    at weblogic.platform.Unix.getEffectiveGroup(Unix.java:95)
    at weblogic.t3.srvr.T3Srvr.switchEffectiveGroup(T3Srvr.java:2080)
    at weblogic.t3.srvr.T3Srvr.resume(T3Srvr.java:1001)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:359)
    at weblogic.Server.main(Server.java:32)
    Dynamic libraries:
    0x10000 /opt/weblogic/bea/jdk141_05/bin/java
    0xff360000 /usr/lib/libthread.so.1
    0xff3a0000 /usr/lib/libdl.so.1
    0xff280000 /usr/lib/libc.so.1
    0xff350000 /usr/platform/FJSV,GPUZC-M/lib/libc_psr.so.1
    0xfe000000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/server/libjvm.so
    0xff210000 /usr/lib/libCrun.so.1
    0xff1f0000 /usr/lib/libsocket.so.1
    0xff100000 /usr/lib/libnsl.so.1
    0xff0b0000 /usr/lib/libm.so.1
    0xff240000 /usr/lib/libw.so.1
    0xff090000 /usr/lib/libmp.so.2
    0xff060000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/native_threads/libhpi.so
    0xff030000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/libverify.so
    0xfe7c0000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/libjava.so
    0xfe7a0000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/libzip.so
    0xfe670000 /usr/lib/nss_files.so.1
    0x91850000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/libnet.so
    0x91710000 /opt/weblogic/bea/weblogic81/server/lib/solaris/libweblogicunix1.so
    0x914d0000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/libnio.so
    0x914b0000 /usr/lib/librt.so.1
    0x91260000 /usr/lib/libaio.so.1
    0x91240000 /opt/weblogic/bea/jdk141_05/jre/lib/sparc/libioser12.so
    0x90d60000 /usr/lib/nss_dns.so.1
    0x90b30000 /usr/lib/libresolv.so.2
    Local Time = Mon Jun 14 18:16:04 2004
    Elapsed Time = 143
    # The exception above was detected in native code outside the VM
    # Java VM: Java HotSpot(TM) Server VM (1.4.1_05-b01 mixed mode)
    Abort
    If anyone have any thoughts, please kindly let me know.
    Many thanks,
    Ralph

    Hi,
    Few comments here...
    1) Seems your environment is not setup correctly but that is not the big cause here.....
    2) This one is important, it seems that you installed weblogic using a different account and are trying to run it from a different account.
    So the account with which you are trying to run weblogic does not have proper permission on
    MW_HOME\user_projects\domains\bifoundation_domain\config\fmwconfig\bootstrap\cwallet.sso
    Right click on the file and go in properties ..
    Enable full control,modify,Read and execute,read and write permissions for the user you are trying to start weblogic and apply it.
    if this simple steps doesnt work, please enable more logging by adding "-Djava.security.debug=jpspolicy" to startup option and grab more details.
    Good Luck let me know if this works.

  • How to know the port number to which the server process is listening

    I have created oracle 10g Release 1 database(orcl) in Windows Xp Professional edition through DBCA . I also created one more database(sample) manually .
    The ORCL server process listens to port no 1521 and
    SAMPLE server process listens to port no 1522
    Once I start the OracleServiceORCL (Service for orcl) from services.msc and check the listener status it displays
    Service "orcl" has 1 instance(s).
    Instance "orcl", status READY, has 1 handler(s) for this service...
    But when I start OracleServiceSAMPLE (Service for sample) from services.exe and check the listener status there is no change . Only when i start the instance the dynamic registration takes place with port no 1521 .
    There is no entry for listener parameter in init.ora file . My question is how is the service ORCL able to get itself registered with the listener even before the instance is up ?
    And how can i know which port no is linked with which server process?
    Also if we provide a different port number(other than 1521 say 1522) in tnsnames.ora for a service and consider the listener is listening to both 1521 and 1522 . Now consider that port number 1521 is free . In this case to which port number will the service be listening to ?
    The listener file looks like this
    SID_LIST_LISTENER =
    (SID_LIST =
    (SID_DESC =
    (SID_NAME = PLSExtProc)
    (ORACLE_HOME = D:\oracle\product\10.1.0\Db_2)
    (PROGRAM = extproc)
    LISTENER =
    (DESCRIPTION_LIST =
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = irobo)(PORT = 1521))
    (DESCRIPTION =
    (ADDRESS = (PROTOCOL = TCP)(HOST = irobo)(PORT = 1522))
    The tnsnames file has the following entry
    ORCL =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = irobo)(PORT = 1522))
    (CONNECT_DATA =
    (SERVICE_NAME = ORCL)
    SAMPLE =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = TCP)(HOST = irobo)(PORT = 1521))
    (CONNECT_DATA =
    (SERVICE_NAME = ORCL)
    EXTPROC_CONNECTION_DATA =
    (DESCRIPTION =
    (ADDRESS_LIST =
    (ADDRESS = (PROTOCOL = IPC)(KEY = EXTPROC))
    (CONNECT_DATA =
    (SID = PLSExtProc)
    (PRESENTATION = RO)
    )

    Service "orcl" has 1 instance(s).
    Instance "orcl", status READY, has 1 handler(s) for this service...[coe]
    The status tells you the instance is up. Starting the service often means the instance gets started also, but whatever "often" means, "READY" means "The instance is up, running and taking callers".
    Your statement that "ORCL [is] able to get itself registered with the listener even before the instance is up" is therefore factually incorrect: you started the service, that started the instance. The instance is up and running. Instances that aren't running don't exist. Things which don't exist don't register themselves. Things which HAVE registered themselves therefore do exist.. and if they say they are "ready", it means they are completely, 100% up and running and behaving quite normally.
    I have not set LOCAL_LISTENER initialization parameter.How is this happening ?
    You only need to set LOCAL_LISTENER if (a) you're not using TCP/IP, (b) you're not using port 1521. Otherwise, PMON is hard-coded to register itself with listeners running on port 1521 and using TCP/IP and you don't need to set LOCAL_LISTENER to achieve that.
    Server Processes do not listen. Listeners do (there's a clue in their name). Listeners receive a call to connect to an instance, they spawn a server process to handle your call, and then they connect you to that server process (or send a message back to you telling you how to contact the server process). Each server process of course receives communications from its dedicated client on a specific port (usually in the 50000+ range), and that port is chosen randomly by the listener when it's spawning it. It's a bit blurry and vague to call that server process port a port on which server processes "listen", however.
    If you're talking dedicated server, each client causes one new server process to be spawned, and there is a one-to-one correspondence between server processes and the port that server process happens to accept client communications on.
    If you're going to ask a listener to do listening duty on multiple ports, I'd first question your need to do that and I'd then point out that unless your client tnsnames.ora knows to talk on the second or subsequent port numbers, the listener is never actually going to make use of that second port.
    In either case, the port the listener listens on has nothing whatsoever to do with the port your client-to-server-process communication ends up taking place on.                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                   

  • Starting the server in Japanese mode after deployment in english mode.

    Hi,
    I have a problem
    We are developing some system for Japanese clients.
    Now problem is that we need to deploy all on their server which shows every hting
    in Japanese. Its going to be really very difficult for us.
    Is there any key or property in weblogic server by changing that we can change
    the language (english-->japanese)
    Actually what I wanted was first to run the server in English mode. deploy each
    and every thing sucessfuly.
    Then stop the server.
    Change that flag or whatever to use japanese character set.
    Start the server again so that it run in japanese language and having every thing
    already deployed.
    Is it possible approach?
    Any other suggestions are also most welcome.
    Thanks and Regards
    Pavitra

    Hi,
    You would have to use the below command to give the root directory to start the server in MSI mode
    -Dweblogic.RootDirectory=path
    Example:
    java -Dweblogic.RootDirectory=c:\MyServerRootDirectory weblogic.ServerTo get more information on this you can check the below link
    Topic: Starting a Managed Server in MSI Mode
    http://download.oracle.com/docs/cd/E12840_01/wls/docs103/server_start/failures.html#wp1058998
    Regards,
    Ravish Mody

  • DRM Process Manager failed to start with error Timeout starting the following process: NetJNIBridge.

    When we Start the DRM  DRM Process Manager failed to start with following error
    [Process ID: 3948, Thread ID: 1, Process Manager]
    Error loading the NetJNIBridge host process on machine: EU9SC1WNW001
    System.Exception: Error loading the NetJNIBridge host process on machine: EU9SC1WNW001 ---> Oracle.Drm.Exceptions.ResourcedException`1[Oracle.Drm.Messages.MsgsProcessManager]: DRM-61028: The following unexpected error occurred communicating with URL 'EU9SC1WNW001': DRM-61023: Timeout starting the following process: NetJNIBridge. DRM Process ID: b3e602fa-f6c1-abcc-4af7-c0a99b51b235
       at Oracle.Drm.ProcessManager.Program.ServiceMethod(String machineName, UInt16 port, Action`1 action)
       at Oracle.Drm.ProcessManager.Program.StartNonEngineProcesses()
    After 11.1.2.3 DRM upgrade

    OS:linux
    i am getting error in installing OPMN manually
    when trying to installing OPMN manually getting error i.e,
    opmnctl: starting opmn and all managed processes...
    opmnctl: opmn start failed
    when checked opmn/logs:
    opmn.log is empty
    ons.log showing error ie:
    13/06/17 19:22:45 [4] ONS server initiated
    13/06/17 19:22:45 [2] 10.209.178.16:6200 - thread create failed
    ipm.log shoeing error i.e:
    13/06/18 11:58:04 [4] OPMN server ready.  Request handling enabled.
    13/06/18 11:58:16 [4] PM state directory exists: /u02/app/orapp/product/10.1.2/opmn/logs/states
    13/06/18 11:58:16 [4] PM state file does not exist: /u02/app/orapp/product/10.1. 2/opmn/logs/states/.opmndat
    any idea why it is showing error??

  • Windows cannot start the installation process

    I have windows server 2012 datacenter with hyper-v role that I tried to upgrade to R2 RTM.
    All went fine until the reboot and the error "windows cannot start the installation process"
    I can start windows server 2012
    I must say that I used a ISO file using DRAC for the install.
    Is there a log to check for errors?

    Hi,
    Just a thought, check to see what your BIOS settings are on your computer.
    This problem is usually related some potential problem in the disk or BIOS or faulty hardware. The BIOS sometimes limits the read/write scope of boot sectors, to avoid virus attack. 
    Review the BIOS setting, if there’s any Anti-Virus settings, just disable it, and then start the install again. 
    Regards,
    Yan Li
    We
    are trying to better understand customer views on social support experience, so your participation in this
    interview project would be greatly appreciated if you have time.
    Thanks for helping make community forums a great place.

  • Cannot start the server

    I just downloaded and installed the J2EE 1.3-beta2-b35 under Windows 2000 Professional.
    I had to change the ORB port from 1050 to 3234 because 1050 was already used.
    I get the following error when I try to start the server:
    C:\j2sdkee1.3>j2ee -verbose
    java version "1.3.1"
    Java(TM) 2 Runtime Environment, Standard Edition (build 1.3.1-b24)
    Java HotSpot(TM) Client VM (build 1.3.1-b24, mixed mode)
    J2EE server listen port: 3234
    org.omg.CORBA.INTERNAL: minor code: 1398079697 completed: No
    at com.sun.corba.ee.internal.iiop.GIOPImpl.createListener(GIOPImpl.java:
    256)
    at com.sun.corba.ee.internal.iiop.GIOPImpl.getEndpoint(GIOPImpl.java:205
    at com.sun.corba.ee.internal.iiop.GIOPImpl.initEndpoints(GIOPImpl.java:1
    40)
    at com.sun.corba.ee.internal.POA.POAORB.getServerEndpoint(POAORB.java:48
    4)
    at com.sun.corba.ee.internal.POA.POAImpl.pre_initialize(POAImpl.java:154
    at com.sun.corba.ee.internal.POA.POAImpl.<init>(POAImpl.java:112)
    at com.sun.corba.ee.internal.POA.POAORB.makeRootPOA(POAORB.java:109)
    at com.sun.corba.ee.internal.POA.POAORB$1.evaluate(POAORB.java:127)
    at com.sun.corba.ee.internal.core.Future.evaluate(Future.java:23)
    at com.sun.corba.ee.internal.corba.ORB.resolveInitialReference(ORB.java:
    2396)
    at com.sun.corba.ee.internal.corba.ORB.resolve_initial_references(ORB.ja
    va:2347)
    at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:198)
    at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:918)
    java.lang.RuntimeException: Unable to create ORB. Possible causes include TCP/IP
    ports in use by another process
    at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:208)
    at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:918)
    java.lang.RuntimeException: Unable to create ORB. Possible causes include TCP/IP
    ports in use by another process
    at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:208)
    at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:918)
    java.lang.RuntimeException: Unable to create ORB. Possible causes include TCP/IP
    ports in use by another process
    at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:355)
    at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:918)
    J2EE server reported the following error: Unable to create ORB. Possible causes
    include TCP/IP ports in use by another process
    Error executing J2EE server ...
    C:\j2sdkee1.3>
    Anybody has a clue of what to do or try???

    After modifying the port #, I am still getting the same error on my machine...pls let me know if there is a fix....Thanks a lot.
    C:\>j2ee -verbose
    J2EE server listen port: 1050
    java.lang.RuntimeException: Could not initialize j2ee server. Possible cause could be another instan
    ce of the server already running.
    at com.sun.enterprise.iiop.POAProtocolMgr.initializeNaming(POAProtocolMgr.java:119)
    at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:226)
    at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:972)
    java.lang.RuntimeException: Could not initialize j2ee server. Possible cause could be another instan
    ce of the server already running.
    at com.sun.enterprise.iiop.POAProtocolMgr.initializeNaming(POAProtocolMgr.java:119)
    at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:226)
    at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:972)
    java.lang.RuntimeException: Could not initialize j2ee server. Possible cause could be another instan
    ce of the server already running.
    at com.sun.enterprise.server.J2EEServer.run(J2EEServer.java:346)
    at com.sun.enterprise.server.J2EEServer.main(J2EEServer.java:972)
    J2EE server reported the following error: Could not initialize j2ee server. Possible cause could be
    another instance of the server already running.
    Error executing J2EE server ...

  • Error while starting the server

    When i am trying to start the server............i am getting the following error
    please tell what is the issue
    Could not start the instance: domain1:admin-server
    server failed to start: abnormal subprocess termination
    Could not start the instance: domain1:SD
    You dont have permission to access C:\Sun\AppServer7\domains\doma
    Could not start the instance: domain1:server1
    server failed to start: abnormal subprocess termination
    Could not start one or more instances in the domain : domain1
    Could not start one or more domains
    Press any key to continue . . .

    It looks like permission problems. Did you got any errors during the installation of the server? Are you installing appserver as user with administrative priveleges?

  • What are the major process to transfer the data from legacy to sap system.

    What are the major process to transfer the data from legacy to sap system using BDC at Real Time only?

    hi,
    BATCH DATA COMMUNICATION
    main methods are:
    1. SESSION METHOD
    2. CALL TRANSACTION
    3. DIRECT INPUT
    Advantages offered by BATCH INPUT method:
    1. Can process large data volumes in batch.
    2. Can be planned and submitted in the background.
    3. No manual interaction is required when data is transferred.
    4. Data integrity is maintained as whatever data is transferred to the table is through transaction. Hence batch input data is submitted to all the checks and validations.
    To implement one of the supported data transfers, you must often write the program that exports the data from your non-SAP system. This program, known as a “data transfer” program must map the data from the external system into the data structure required by the SAP batch input program.
    The batch input program must build all of the input to execute the SAP transaction.
    Two main steps are required:
    • To build an internal table containing every screen and every field to be filled in during the execution of an SAP transaction.
    • To pass the table to SAP for processing.
    Prerequisite for Data Transfer Program
    Writing a Data Transfer Program involves following prerequisites:
    Analyzing data from local file
    Analyzing transaction
    Analyzing transaction involves following steps:
    • The transaction code, if you do not already know it.
    • Which fields require input i.e., mandatory.
    • Which fields can you allow to default to standard values.
    • The names, types, and lengths of the fields that are used by a transaction.
    • Screen number and Name of module pool program behind a particular transaction.
    To analyze a transaction::
    • Start the transaction by menu or by entering the transaction code in the command box.
    (You can determine the transaction name by choosing System – Status.)
    • Step through the transaction, entering the data will be required for processing your batch input data.
    • On each screen, note the program name and screen (dynpro) number.
    (dynpro = dyn + pro. Dyn = screen, pro = number)
    • Display these by choosing System – Status. The relevant fields are Program (dynpro) and Dynpro number. If pop-up windows occur during execution, you can get the program name and screen number by pressing F1 on any field or button on the screen.
    The technical info pop-up shows not only the field information but also the program and screen.
    • For each field, check box, and radio button on each screen, press F1 (help) and then choose Technical Info.
    Note the following information:
    - The field name for batch input, which you’ll find in its own box.
    - The length and data type of the field. You can display this information by double clicking on the Data Element field.
    • Find out the identification code for each function (button or menu) that you must execute to process the batch-input data (or to go to new screen).
    Place the cursor on the button or menu entry while holding down the left mouse button. Then press F1.
    In the pop-up window that follows, choose Technical info and note the code that is shown in the Function field.
    You can also run any function that is assigned to a function key by way of the function key number. To display the list of available function keys, click on the right mouse button. Note the key number that is assigned to the functions you want to run.
    Once you have program name, screen number, field name (screen field name), you can start writing.
    DATA TRANSFER program.
    Declaring internal table
    First Integral Table similar to structure like local file.
    Declaring internal table like BDCDATA
    The data from internal table is not transferred directly to database table, it has to go through transaction. You need to pass data to particular screen and to particular screen-field. Data is passed to transaction in particular format, hence there is a need for batch input structure.
    The batch input structure stores the data that is to be entered into SAP system and the actions that are necessary to process the data. The batch input structure is used by all of the batch input methods. You can use the same structure for all types of batch input, regardless of whether you are creating a session in the batch input queue or using CALL TRANSACTION.
    This structure is BDCDATA, which can contain the batch input data for only a single run of a transaction. The typical processing loop in a program is as follows:
    • Create a BDCDATA structure
    • Write the structure out to a session or process it with CALL TRANSACTION USING; and then
    • Create a BDCDATA structure for the next transaction that is to be processed.
    Within a BDCDATA structure, organize the data of screens in a transaction. Each screen that is processed in the course of a transaction must be identified with a BDCDATA record. This record uses the Program, Dynpro, and Dynbegin fields of the structure.
    The screen identifier record is followed by a separate BDCDATA record for each value, to be entered into a field. These records use the FNAM and FVAL fields of the BDCDATA structure. Values to be entered in a field can be any of the following:
    • Data that is entered into screen fields.
    • Function codes that are entered into the command field. Such function codes execute functions in a transaction, such as Save or Enter.
    The BDCDATA structure contains the following fields:
    • PROGRAM: Name of module pool program associated with the screen. Set this field only for the first record for the screen.
    • DYNPRO: Screen Number. Set this field only in the first record for the screen.
    • DYNBEGIN: Indicates the first record for the screen. Set this field to X, only for the first record for the screen. (Reset to ‘ ‘ (blank) for all other records.)
    • FNAM: Field Name. The FNAM field is not case-sensitive.
    • FVAL: Value for the field named in FNAM. The FVAL field is case-sensitive. Values assigned to this field are always padded on the right, if they are less than 132 characters. Values must be in character format.
    Transferring data from local file to internal table
    Data is uploaded to internal table by UPLOAD of WS_UPLOAD function.
    Population of BDCDATA
    For each record of internal table, you need to populate Internal table, which is similar to BDCDATA structure.
    All these five initial steps are necessary for any type of BDC interface.
    DATA TRANSFER program can call SESSION METHOD or CALL TRANSACTION. The initial steps for both the methods are same.
    First step for both the methods is to upload the data to internal table. From Internal Table, the data is transferred to database table by two ways i.e., Session method and Call transaction.
    SESSION METHOD
    About Session method
    In this method you transfer data from internal table to database table through sessions.
    In this method, an ABAP/4 program reads the external data that is to be entered in the SAP System and stores the data in session. A session stores the actions that are required to enter your data using normal SAP transaction i.e., Data is transferred to session which in turn transfers data to database table.
    Session is intermediate step between internal table and database table. Data along with its action is stored in session i.e., data for screen fields, to which screen it is passed, the program name behind it, and how the next screen is processed.
    When the program has finished generating the session, you can run the session to execute the SAP transactions in it. You can either explicitly start and monitor a session or have the session run in the background processing system.
    Unless session is processed, the data is not transferred to database table.
    BDC_OPEN_GROUP
    You create the session through program by BDC_OPEN_GROUP function.
    Parameters to this function are:
    • User Name: User name
    • Group: Name of the session
    • Lock Date: The date on which you want to process the session.
    • Keep: This parameter is passed as ‘X’ when you want to retain session after
    processing it or ‘ ‘ to delete it after processing.
    BDC_INSERT
    This function creates the session & data is transferred to Session.
    Parameters to this function are:
    • Tcode: Transaction Name
    • Dynprotab: BDC Data
    BDC_CLOSE_GROUP
    This function closes the BDC Group. No Parameters.
    Some additional information for session processing
    When the session is generated using the KEEP option within the BDC_OPEN_GROUP, the system always keeps the sessions in the queue, whether it has been processed successfully or not.
    However, if the session is processed, you have to delete it manually. When session processing is completed successfully while KEEP option was not set, it will be removed automatically from the session queue. Log is not removed for that session.
    If the batch-input session is terminated with errors, then it appears in the list of INCORRECT session and it can be processed again. To correct incorrect session, you can analyze the session. The Analysis function allows to determine which screen and value has produced the error. If you find small errors in data, you can correct them interactively, otherwise you need to modify batch input program, which has generated the session or many times even the data file.
    CALL TRANSACTION
    About CALL TRANSACTION
    A technique similar to SESSION method, while batch input is a two-step procedure, Call Transaction does both steps online, one after the other. In this method, you call a transaction from your program by
    Call transaction <tcode> using <BDCTAB>
    Mode <A/N/E>
    Update <S/A>
    Messages into <MSGTAB>.
    Parameter – 1 is transaction code.
    Parameter – 2 is name of BDCTAB table.
    Parameter – 3 here you are specifying mode in which you execute transaction
    A is all screen mode. All the screen of transaction are displayed.
    N is no screen mode. No screen is displayed when you execute the transaction.
    E is error screen. Only those screens are displayed wherein you have error record.
    Parameter – 4 here you are specifying update type by which database table is updated.
    S is for Synchronous update in which if you change data of one table then all the related Tables gets updated. And sy-subrc is returned i.e., sy-subrc is returned for once and all.
    A is for Asynchronous update. When you change data of one table, the sy-subrc is returned. And then updating of other affected tables takes place. So if system fails to update other tables, still sy-subrc returned is 0 (i.e., when first table gets updated).
    Parameter – 5 when you update database table, operation is either successful or unsuccessful or operation is successful with some warning. These messages are stored in internal table, which you specify along with MESSAGE statement. This internal table should be declared like BDCMSGCOLL, a structure available in ABAP/4. It contains the following fields:
    1. Tcode: Transaction code
    2. Dyname: Batch point module name
    3. Dynumb: Batch input Dyn number
    4. Msgtyp: Batch input message type (A/E/W/I/S)
    5. Msgspra: Batch input Lang, id of message
    6. Msgid: Message id
    7. MsgvN: Message variables (N = 1 - 4)
    For each entry, which is updated in database, table message is available in BDCMSGCOLL. As BDCMSGCOLL is structure, you need to declare a internal table which can contain multiple records (unlike structure).
    Steps for CALL TRANSACTION method
    1. Internal table for the data (structure similar to your local file)
    2. BDCTAB like BDCDATA
    3. UPLOAD or WS_UPLOAD function to upload the data from local file to itab. (Considering file is local file)
    4. Loop at itab.
    Populate BDCTAB table.
    Call transaction <tcode> using <BDCTAB>
    Mode <A/N/E>
    Update <S/A>.
    Refresh BDCTAB.
    Endloop.
    (To populate BDCTAB, You need to transfer each and every field)
    The major differences between Session method and Call transaction are as follows:
    SESSION METHOD CALL TRANSACTION
    1. Data is not updated in database table unless Session is processed. Immediate updation in database table.
    2. No sy-subrc is returned. Sy-subrc is returned.
    3. Error log is created for error records. Errors need to be handled explicitly
    4. Updation in database table is always synchronous Updation in database table can be synchronous Or Asynchronous.
    Error Handling in CALL TRANSACTION
    When Session Method updates the records in database table, error records are stored in the log file. In Call transaction there is no such log file available and error record is lost unless handled. Usually you need to give report of all the error records i.e., records which are not inserted or updated in the database table. This can be done by the following method:
    Steps for the error handling in CALL TRANSACTION
    1. Internal table for the data (structure similar to your local file)
    2. BDCTAB like BDCDATA
    3. Internal table BDCMSG like BDCMSGCOLL
    4. Internal table similar to Ist internal table
    (Third and fourth steps are for error handling)
    5. UPLOAD or WS_UPLOAD function to upload the data from the local file to itab. (Considering file is local file)
    6. Loop at itab.
    Populate BDCTAB table.
    Call transaction <tr.code> using <Bdctab>
    Mode <A/N/E>
    Update <S/A>
    Messages <BDCMSG>.
    Perform check.
    Refresh BDCTAB.
    Endloop.
    7 Form check.
    IF sy-subrc <> 0. (Call transaction returns the sy-subrc if updating is not successful).
    Call function Format_message.
    (This function is called to store the message given by system and to display it along with record)
    Append itab2.
    Display the record and message.
    DIRECT INPUT
    About Direct Input
    In contrast to batch input, this technique does not create sessions, but stores the data directly. It does not simulate the online transaction. To enter the data into the corresponding database tables directly, the system calls a number of function modules that execute any necessary checks. In case of errors, the direct input technique provides a restart mechanism. However, to be able to activate the restart mechanism, direct input programs must be executed in the background only. Direct input checks the data thoroughly and then updates the database directly.
    You can start a Direct Input program in two ways;
    Start the program directly
    This is the quickest way to see if the program works with your flat file. This option is possible with all direct input programs. If the program ends abnormally, you will not have any logs telling you what has or has not been posted. To minimize the chance of this happening, always use the check file option for the first run with your flat file. This allows you to detect format errors before transfer.
    Starting the program via the DI administration transaction
    This transaction restarts the processing, if the data transfer program aborts. Since DI document are immediately posted into the SAP D/B, the restart option prevents the duplicate document posting that occurs during a program restart (i.e., without adjusting your flat file).
    Direct input is usually done for standard data like material master, FI accounting document, SD sales order and Classification for which SAP has provided standard programs.
    First time you work with the Direct Input administration program, you will need to do some preparation before you can transfer data:
    - Create variant
    - Define job
    - Start job
    - Restart job
    Common batch input errors
    - The batch input BDCDATA structure tries to assign values to fields which do not exist in the current transaction screen.
    - The screen in the BDCDATA structure does not match the right sequence, or an intermediate screen is missing.
    - On exceptional occasions, the logic flow of batch input session does not exactly match that of manual online processing. Testing the sessions online can discover by this.
    - The BDCDATA structure contains fields, which are longer than the actual definition.
    - Authorization problems.
    RECORDING A BATCH INPUT
    A B recording allows you to record a R/3 transaction and generate a program that contains all screens and field information in the required BDC-DATA format.
    You can either use SHDB transaction for recording or
    SYSTEM ? SERVICES ? BATCH INPUT ? EDIT
    And from here click recording.
    Enter name for the recording.
    (Dates are optional)
    Click recording.
    Enter transaction code.
    Enter.
    Click Save button.
    You finally come to a screen where, you have all the information for each screen including BDC_OKCODE.
    • Click Get Transaction.
    • Return to BI.
    • Click overview.
    • Position the cursor on the just recorded entry and click generate program.
    • Enter program name.
    • Click enter
    The program is generated for the particular transaction.
    BACKGROUND PROCESSING
    Need for Background processing
    When a large volume of data is involved, usually all batch inputs are done in background.
    The R/3 system includes functions that allow users to work non-interactively or offline. The background processing systems handle these functions.
    Non-interactively means that instead of executing the ABAP/4 programs and waiting for an answer, user can submit those programs for execution at a more convenient planned time.
    There are several reasons to submit programs for background execution.
    • The maximum time allowed for online execution should not exceed 300 seconds. User gets TIMEOUT error and an aborted transaction, if time for execution exceeds 300 seconds. To avoid these types of error, you can submit jobs for background processing.
    • You can use the system while your program is executing.
    This does not mean that interactive or online work is not useful. Both type of processing have their own purposes. Online work is the most common one entering business data, displaying information, printing small reports, managing the system and so on. Background jobs are mainly used for the following tasks; to process large amount of data, to execute periodic jobs without human intervention, to run program at a more convenient, planned time other than during normal working hours i.e., Nights or weekends.
    The transaction for background processing is SM36.
    Or
    Tools ? Administration ? Jobs ? Define jobs
    Or
    System ? services ? Jobs
    Components of the background jobs
    A job in Background processing is a series of steps that can be scheduled and step is a program for background processing.
    • Job name. Define the name of assigned to the job. It identifies the job. You can specify up to 32 characters for the name.
    • Job class. Indicates the type of background processing priority assigned to the job.
    The job class determines the priority of a job. The background system admits three types of job classes: A B & C, which correspond to job priority.
    • Job steps. Parameters to be passed for this screen are as follows:
    Program name.
    Variant if it is report program
    Start criteria for the job: Option available for this are as follows:
    Immediate - allows you to start a job immediately.
    Date/Time - allows you to start a job at a specific name.
    After job - you can start a job after a particular job.
    After event - allows you to start a job after a particular event.
    At operation mode - allows you to start a job when the system switches to a particular operation mode.
    Defining Background jobs
    It is two step process: Firstly, you define the job and then release it.
    When users define a job and save it, they are actually scheduling the report i.e., specifying the job components, the steps, the start time.
    When users schedule program for background processing, they are instructing the system to execute an ABAP/4 report or an external program in the background. Scheduled jobs are not executed until they are released. When jobs are released, they are sent for execution to the background processing system at the specified start time. Both scheduling and releasing of jobs require authorizations.
    HANDLING OF POP UP SCREEN IN BDC
    Many times in transaction pop up screen appears and for this screen you don’t pass any record but some indication to system telling it to proceed further. For example: The following screen
    To handle such screen, system has provided a variable called BDC_CURSOR. You pass this variable to BDCDATA and process the screen.
    Usually such screen appears in many transactions, in this case you are just passing information, that YES you want to save the information, that means YES should be clicked. So you are transferring this information to BDCDATA i.e., field name of YES which is usually SPOT_OPTION. Instead of BDC_OKCODE, you are passing BDC_CURSOR.
    BDC_CURSOR is also used to place cursor on particular field.
    A simple transaction where you are entering customer number on first screen and on next screen data is displayed for the particular customer number. Field, which we are changing here, are name and city. When you click on save, the changed record gets saved.
    Prerequisite to write this BDC interface as indicated earlier is:
    1. To find screen number
    2. To find screen field names, type of the field and length of the field.
    3. To find BDC_OKCODE for each screen
    4. Create flat file.
    generally  Batch Input usually are used to transfer large amount of data. For example you are implementing a new SAP project, and of course you will need some data transfer from legacy system to SAP system.
    CALL TRANSACTION is used especially for integration actions between two SAP systems or between different modules. Users sometimes wish to do something like that click a button or an item then SAP would inserts or changes data automatically. Here CALL TRANSACTION should be considered.
    2. Transfer data for multiple transactions usually the Batch Input method is used.
    check these sites for step by step process:
    For BDC:
    http://myweb.dal.ca/hchinni/sap/bdc_home.htm
    https://www.sdn.sap.com/irj/sdn/wiki?path=/display/home/bdc&
    http://www.sap-img.com/abap/learning-bdc-programming.htm
    http://www.sapdevelopment.co.uk/bdc/bdchome.htm
    http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm
    http://help.sap.com/saphelp_47x200/helpdata/en/69/c250684ba111d189750000e8322d00/frameset.htm
    http://www.sapbrain.com/TUTORIALS/TECHNICAL/BDC_tutorial.html
    Check these link:
    http://www.sap-img.com/abap/difference-between-batch-input-and-call-transaction-in-bdc.htm
    http://www.sap-img.com/abap/question-about-bdc-program.htm
    http://www.itcserver.com/blog/2006/06/30/batch-input-vs-call-transaction/
    http://www.planetsap.com/bdc_main_page.htm
    call Transaction or session method ?
    null

  • Finished Installation..ERROR in starting the SERVER PLZZ HELP

    Hi,
    I could complete the installation of SAP WAS from the cd with host n keller successfully.
    But now when i make a set up and try to logon with the SAP GUI , It gives an error saying the host couldnt be find and in the meanwhile on ABAP ENGINE STARTUP SCREEN it starts the server and then immediately shuts down showing : Work process xx died..and ICM shut down successful.
    Plzz help me as to if any settings are causing this or wat should i do to splve this.
    Thanks,
    Shilpi

    Hi,
    Did you configure loopback adapter and assigned a ip address to it? If it is done, then try to increase virtual memory.
    Sabita

  • Security Error when starting the server - WPLS 7.0

    Security Error when starting the server - WPLS 7.0
    what may be the reason ...
    console :
    BUILD SUCCESSFUL
    Total time: 3 seconds
    Starting WebLogic Server...
    <May 30, 2005 4:22:15 PM IST> <Notice> <Management> <140005> <Loading configuration C:\cpDomain\.\config.xml>
    <May 30, 2005 4:22:18 PM IST> <Info> <Logging> <000000> <FileLogger Opened at C:\cpDomain\portalServer\weblogi
    c.portalServer.log>
    <May 30, 2005 4:22:21 PM IST> <Info> <Security> <090516> <The RoleMapper provider has preexisting LDAP data.>
    <May 30, 2005 4:22:21 PM IST> <Info> <Security> <090516> <The Authorizer provider has preexisting LDAP data.>
    <May 30, 2005 4:22:21 PM IST> <Info> <Security> <090143> <The weblogic keystore provider DefaultKeyStore in re
    alm cprealm cannot be used for private keys because its configured private key keystore file wlDefaultKeyStore
    .jks does not exist.>
    <May 30, 2005 4:22:21 PM IST> <Info> <Security> <090142> <The weblogic keystore provider DefaultKeyStore in re
    alm cprealm cannot be used for trusted (root) CAs because its trusted (root) CA keystore was not configured.>
    <May 30, 2005 4:22:21 PM IST> <Notice> <Security> <090082> <Security initializing using realm cprealm.>
    <May 30, 2005 4:22:21 PM IST> <Critical> <WebLogicServer> <000364> <Server failed during initialization. Excep
    tion:java.lang.SecurityException: Authentication for user weblogic denied
    java.lang.SecurityException: Authentication for user weblogic denied
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.doBootAuthorization(SecurityServiceMan
    agerDelegateImpl.java:411)
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.initialize(SecurityServiceManagerDeleg
    ateImpl.java:539)
    at weblogic.security.service.SecurityServiceManager.initialize(SecurityServiceManager.java:917)
    at weblogic.t3.srvr.T3Srvr.initialize1(T3Srvr.java:723)
    at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:594)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:282)
    at weblogic.Server.main(Server.java:32)
    >
    <May 30, 2005 4:22:21 PM IST> <Emergency> <WebLogicServer> <000342> <Unable to initialize the server: Fatal in
    itialization exception
    Throwable: java.lang.SecurityException: Authentication for user weblogic denied
    java.lang.SecurityException: Authentication for user weblogic denied
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.doBootAuthorization(SecurityServiceMan
    agerDelegateImpl.java:411)
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.initialize(SecurityServiceManagerDeleg
    ateImpl.java:539)
    at weblogic.security.service.SecurityServiceManager.initialize(SecurityServiceManager.java:917)
    at weblogic.t3.srvr.T3Srvr.initialize1(T3Srvr.java:723)
    at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:594)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:282)
    at weblogic.Server.main(Server.java:32)
    >
    The WebLogic Server did not start up properly.
    Exception raised:
    java.lang.SecurityException: Authentication for user weblogic denied
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.doBootAuthorization(SecurityServiceMan
    agerDelegateImpl.java:411)
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.initialize(SecurityServiceManagerDeleg
    ateImpl.java:539)
    at weblogic.security.service.SecurityServiceManager.initialize(SecurityServiceManager.java:917)
    at weblogic.t3.srvr.T3Srvr.initialize1(T3Srvr.java:723)
    at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:594)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:282)
    at weblogic.Server.main(Server.java:32)
    Reason: Fatal initialization exception
    Throwable: java.lang.SecurityException: Authentication for user weblogic denied
    java.lang.SecurityException: Authentication for user weblogic denied
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.doBootAuthorization(SecurityServiceMan
    agerDelegateImpl.java:411)
    at weblogic.security.service.SecurityServiceManagerDelegateImpl.initialize(SecurityServiceManagerDeleg
    ateImpl.java:539)
    at weblogic.security.service.SecurityServiceManager.initialize(SecurityServiceManager.java:917)
    at weblogic.t3.srvr.T3Srvr.initialize1(T3Srvr.java:723)
    at weblogic.t3.srvr.T3Srvr.initialize(T3Srvr.java:594)
    at weblogic.t3.srvr.T3Srvr.run(T3Srvr.java:282)
    at weblogic.Server.main(Server.java:32)
    C:\cpDomain\bin>
    Thanks
    Thanks & Regards,
    Siva VP,
    [email protected]

    Looks like you cannot connect to LDAP. Are you configured correctly?

  • Concurrency Visualizer Extension (VS2013): "An unknown error occurred while trying to start the collection process."

    Not sure if this is the right place to ask about this but since my question concerns an extension I'll give it a shot.
    I'm trying to use the Visual Studio 2013 Concurrency Visualizer extension to debug a simple test console application. I've set executive paging to disabled in the registry as it directed and hit "add SDK to project" in the concurrency
    visualizer menu options. And of course, restarted my computer to apply the settings. When I try to "start [the concurrency visualizer] with current project" I get an error popup:
    "An unknown error occurred while trying to start the collection process."
    I really need the concurrency profiling to start debugging contention in my multithreaded application. Prompt assistance would be much appreciated.

    Hi,
    This forum is to discuss and ask questions about extending and integrating with Visual Studio (using the Extension Manager, building VSX containers for deployment, Visual Studio SDK, and more), Visual Studio Online (REST APIs, service hooks, and OAuth),
    and Team Foundation Server.
    You have problems when using Concurrency Visualizer Extension, please ask in
    the page under "Q AND A". Since Concurrency Visualizer is a diagnostic tool, you can post this issue in
    Visual Studio Diagnostics (Debugger, Profiler, IntelliTrace) forum too.
    Best regards,
    We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
    Click
    HERE to participate the survey.

Maybe you are looking for

  • Unable to see Dashboard over the internet (Portal)

    Dear All, I have one issue here which is bit technical, I have made an Xcelsius Dashboard (Connection Type: Excel XML Maps (BW Queries)) and uploaded SWF file on to KM Repository in Portal. I have created Document iview and a role to published the da

  • Aliases have disappeared from Mail and I am left with one email address!!

    For no apparent reason all my email aliases have gone and I have the choice of one! Does anyone know how I can retrieve them? Thanks, Kevin

  • Install peoplesoft on Windows 7!!

    Hi, I have been struggling to make peoplesoft 8.51/HCM9.1 working on windows 7 64-bit, as it has been failing with an error "missing or invalid version of sql library psora (200 0)". When I gone through the various posts on this error I realized that

  • How to send a fax with adsl, how to send a fax with adsl

    Hello, Please could you tell me how  can i send a fax with my Imac and with an adsl router? I have also a old 56K modem. If i connect it to the mac can it work together to adsl router or will i get some conflict? Is there any program to use for free

  • How to hide ?config= in webforms url

    I have forms 11.1.1.2 with weblogic 10.3.5 and ohs I have several forms configurations like http://domainname:port/forms/frmservlet?config=A http://domainname:port/forms/frmservlet?config=B I want to hide the real URL, with configuration of virtual h