Module - adding to display list, container null?
So I'm working on a module inside one of our applications and when the module is loaded it is passed a VO. I have found that I need to fire all of my other logic for the nested classes inside this module on the Set method of this VO because if I wait for the creationComplete, the nested logic in the other classes never gets executed. The only problem is, when I fire off all of my logic on the Set, it all gets executed but when it goes to draw these components and add them to the display list, the container they're being added to is still null, I assume because it hasn't been created yet. I also tried to add my components in the MXML and just bind their data value to the VO, but even when I do that, the inner logic never gets executed, I assume for the same reason.
Has anyone else had this issue before or have any ideas on a way to solve this issue? It almost feels like waiting for CreationComplete is too late, yet the Set method is too early.
Thanks,
BK
Not sure I understand. You can hook other lifecycle methods in the module
like commitProperties. That's where we recommend custom components resolve
new properties.
Similar Messages
-
ALV report -How to display list contains no data?
Hi Experts,
I have developed an drill down alv report ? I like to display if 'List contains no data ' or 'No data to display' in Grid itself when there is no data to dissplay instead of an Message ?how can i do that?hi
u should have used this command before calling your grid or list
if gt_itab[] is not initial. --> comment this
call function reuse or call method
endif.
assuming you have given a top of page for your grid output
if helpful, reward
Sathish. R -
Using a devices camera and adding the image to the display list
Hi,
My students and I have not been able to make an AIR app that can take a picture using the devices camera and then add the image to the display list. We are able to open the devices camera and of course take a picture, but that's it.
We've been using these two tutorials/examples:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/flash/media/CameraUI.ht ml
and
http://tv.adobe.com/watch/adc-presents/input-for-mobile-devices-camera/
I've uploaded our project: http://www.dayvid.com/professor/camera.zip
Can someone help us out?
Thanks!
Below is the main document class:
package {
import flash.desktop.NativeApplication;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.MediaEvent;
import flash.media.CameraUI;
import flash.media.MediaPromise;
import flash.media.MediaType;
import flash.events.MouseEvent;
public class Main extends MovieClip{
private var deviceCameraApp:CameraUI = new CameraUI();
private var imageLoader:Loader;
public function Main()
this.stage.align = StageAlign.TOP_LEFT;
this.stage.scaleMode = StageScaleMode.NO_SCALE;
camera_btn.addEventListener(MouseEvent.CLICK, cameraBtnClicked);
private function cameraBtnClicked(event:MouseEvent):void
if( CameraUI.isSupported )
result_txt.text = "Initializing camera...";
deviceCameraApp.addEventListener( MediaEvent.COMPLETE, imageCaptured );
deviceCameraApp.addEventListener( Event.CANCEL, captureCanceled );
deviceCameraApp.addEventListener( ErrorEvent.ERROR, cameraError );
deviceCameraApp.launch( MediaType.IMAGE );
else
result_txt.text = "Camera interface is not supported.";
private function imageCaptured( event:MediaEvent ):void
result_txt.text = "Media captured...";
var imagePromise:MediaPromise = event.data;
if( imagePromise.isAsync )
result_txt.text = "Asynchronous media promise.";
imageLoader = new Loader();
imageLoader.contentLoaderInfo.addEventListener( Event.COMPLETE, asyncImageLoaded );
imageLoader.addEventListener( IOErrorEvent.IO_ERROR, cameraError );
imageLoader.loadFilePromise( imagePromise );
else
result_txt.text = "Synchronous media promise.";
imageLoader.loadFilePromise( imagePromise );
showMedia( imageLoader );
private function captureCanceled( event:Event ):void
result_txt.text = "Media capture canceled.";
NativeApplication.nativeApplication.exit();
private function asyncImageLoaded( event:Event ):void
result_txt.text = "Media loaded in memory.";
showMedia( imageLoader );
private function showMedia( loader:Loader ):void
this.addChild( loader );
private function cameraError( error:ErrorEvent ):void
result_txt.text = "Error:" + error.text;
NativeApplication.nativeApplication.exit();Hi,
Do I have to add the picture to the cameraroll in order to add it to the AIR apps display list?
Both examples from Adobe claim that their examples work. Do they not?
In the example, the event handler asyncImageLoaded is never called. The output text field shows - result_txt.text = "Asynchronous media promise."; So the Event.COMPLETE is being added. But I don't think it's being dispatched.
Any ideas? -
Hi All,
i have a SharePoint list, that list contains photos(images).
now i want display that images in spgridview.
How can i display?
Thanks in advance!Hi,
According to your post, my understanding is that you want to display that images in spgridview.
You can use a hyperlinkfield that is bound to the SPGridView. Please refer to:
Add a Hyperlink Image in a SPGridView
You can also use TemplateField or ImageField to render images. Please refer to:
Image not showing in grid view
In addition, here are two similar articles for your reference:
How To: Use SharePoint 2010 WebParts with a GridView Control to get SQL Image Data
type and other Values
DotNetSharePoint: How to display images in gridview from database using asp.net
Best Regards,
Linda Li
Linda Li
TechNet Community Support -
Revision: 12542
Revision: 12542
Author: [email protected]
Date: 2009-12-04 10:38:32 -0800 (Fri, 04 Dec 2009)
Log Message:
When adding a mask to the display list need to validate it and all its children. Previously the children were not validated and their display list was updated before properties were committed or measure was done. RichText was not set up to handle this.
QE notes:
Doc notes:
Bugs: SDK-24511
Reviewer: Evtim, Deepa
Tests run: checkintests, fxg, primitives, Group
Is noteworthy for integration: no
Ticket Links:
http://bugs.adobe.com/jira/browse/SDK-24511
Modified Paths:
flex/sdk/trunk/frameworks/projects/spark/src/spark/components/supportClasses/GroupBase.as
flex/sdk/trunk/frameworks/projects/spark/src/spark/utils/MaskUtil.asAFAIK, the only way to do this is to write a system modifcation.
The BADI is executed only once at startup of the session, so that makes it merely static. (A strange point in time, I discussed it with SAP and they just shook their heads)
I had the same problem with some other F4-Helps and it was a big hazzle. From my experience, no straight answer. -
Displaying list of materials in module pool
Hello frds,
i have senario where i have to select a push button to display list of materials in the next screen based on the range .In reports v write a select query but in module pool its not working.
PLZ help me out with simple exampleHi sai,
Please refer th procedure.
For the select-options you might have defined a selection screen.
Next you can fetch the entire data that you wanted to display in a module pool into an internal table.
you can call the screen you defined for o/p upon the selection.
Then, You define a screen XXXX and a table control in the scree, and in the PAI module of the screen
you write a chain end chain processing in which you can display the contents of your internal table.
OR
if you want the selection also to be in the module pool, then for displaying the O/P you can definr a sub-screen of the initial screen and you can call that sub-screen on selcting, which can be done with a function code.
Hope this helps -
Help with taking a pic with Android camera and adding pic to display list
Hi,
My students and I have not been able to make an AIR app that can take a picture using the devices camera and then add the image to the display list. We are able to open the devices camera and of course take a picture, but that's it.
We've been using these two tutorials/examples:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fla sh/media/CameraUI.html
and
http://tv.adobe.com/watch/adc-presents/input-for-mobile-devices-camera /
I've uploaded our project: http://www.dayvid.com/professor/camera.zip
Can someone help us out?
Thanks!
Below is the main document class:
package {
import flash.desktop.NativeApplication;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.MediaEvent;
import flash.media.CameraUI;
import flash.media.MediaPromise;
import flash.media.MediaType;
import flash.events.MouseEvent;
public class Main extends MovieClip{
private var deviceCameraApp:CameraUI = new CameraUI();
private var imageLoader:Loader;
public function Main()
this.stage.align = StageAlign.TOP_LEFT;
this.stage.scaleMode = StageScaleMode.NO_SCALE;
camera_btn.addEventListener(MouseEvent.CLICK, cameraBtnClicked);
private function cameraBtnClicked(event:MouseEvent):void
if( CameraUI.isSupported )
result_txt.text = "Initializing camera...";
deviceCameraApp.addEventListener( MediaEvent.COMPLETE, imageCaptured );
deviceCameraApp.addEventListener( Event.CANCEL, captureCanceled );
deviceCameraApp.addEventListener( ErrorEvent.ERROR, cameraError );
deviceCameraApp.launch( MediaType.IMAGE );
else
result_txt.text = "Camera interface is not supported.";
private function imageCaptured( event:MediaEvent ):void
result_txt.text = "Media captured...";
var imagePromise:MediaPromise = event.data;
if( imagePromise.isAsync )
result_txt.text = "Asynchronous media promise.";
imageLoader = new Loader();
imageLoader.contentLoaderInfo.addEventListener( Event.COMPLETE, asyncImageLoaded );
imageLoader.addEventListener( IOErrorEvent.IO_ERROR, cameraError );
imageLoader.loadFilePromise( imagePromise );
else
result_txt.text = "Synchronous media promise.";
imageLoader.loadFilePromise( imagePromise );
showMedia( imageLoader );
private function captureCanceled( event:Event ):void
result_txt.text = "Media capture canceled.";
NativeApplication.nativeApplication.exit();
private function asyncImageLoaded( event:Event ):void
result_txt.text = "Media loaded in memory.";
showMedia( imageLoader );
private function showMedia( loader:Loader ):void
this.addChild( loader );
private function cameraError( error:ErrorEvent ):void
result_txt.text = "Error:" + error.text;
NativeApplication.nativeApplication.exit();Hi,
My students and I have not been able to make an AIR app that can take a picture using the devices camera and then add the image to the display list. We are able to open the devices camera and of course take a picture, but that's it.
We've been using these two tutorials/examples:
http://help.adobe.com/en_US/FlashPlatform/reference/actionscript/3/fla sh/media/CameraUI.html
and
http://tv.adobe.com/watch/adc-presents/input-for-mobile-devices-camera /
I've uploaded our project: http://www.dayvid.com/professor/camera.zip
Can someone help us out?
Thanks!
Below is the main document class:
package {
import flash.desktop.NativeApplication;
import flash.display.Loader;
import flash.display.MovieClip;
import flash.display.StageAlign;
import flash.display.StageScaleMode;
import flash.events.ErrorEvent;
import flash.events.Event;
import flash.events.IOErrorEvent;
import flash.events.MediaEvent;
import flash.media.CameraUI;
import flash.media.MediaPromise;
import flash.media.MediaType;
import flash.events.MouseEvent;
public class Main extends MovieClip{
private var deviceCameraApp:CameraUI = new CameraUI();
private var imageLoader:Loader;
public function Main()
this.stage.align = StageAlign.TOP_LEFT;
this.stage.scaleMode = StageScaleMode.NO_SCALE;
camera_btn.addEventListener(MouseEvent.CLICK, cameraBtnClicked);
private function cameraBtnClicked(event:MouseEvent):void
if( CameraUI.isSupported )
result_txt.text = "Initializing camera...";
deviceCameraApp.addEventListener( MediaEvent.COMPLETE, imageCaptured );
deviceCameraApp.addEventListener( Event.CANCEL, captureCanceled );
deviceCameraApp.addEventListener( ErrorEvent.ERROR, cameraError );
deviceCameraApp.launch( MediaType.IMAGE );
else
result_txt.text = "Camera interface is not supported.";
private function imageCaptured( event:MediaEvent ):void
result_txt.text = "Media captured...";
var imagePromise:MediaPromise = event.data;
if( imagePromise.isAsync )
result_txt.text = "Asynchronous media promise.";
imageLoader = new Loader();
imageLoader.contentLoaderInfo.addEventListener( Event.COMPLETE, asyncImageLoaded );
imageLoader.addEventListener( IOErrorEvent.IO_ERROR, cameraError );
imageLoader.loadFilePromise( imagePromise );
else
result_txt.text = "Synchronous media promise.";
imageLoader.loadFilePromise( imagePromise );
showMedia( imageLoader );
private function captureCanceled( event:Event ):void
result_txt.text = "Media capture canceled.";
NativeApplication.nativeApplication.exit();
private function asyncImageLoaded( event:Event ):void
result_txt.text = "Media loaded in memory.";
showMedia( imageLoader );
private function showMedia( loader:Loader ):void
this.addChild( loader );
private function cameraError( error:ErrorEvent ):void
result_txt.text = "Error:" + error.text;
NativeApplication.nativeApplication.exit(); -
Problem adding to the display list from a class
If I try to convert as3 in an mxml file into a class file and
create an instance of the class, I am unable to add the instance to
the display list. The original mxml file is at the bottom of the
page. The modified mxml file and its associated class are below.
The problem is that I cannot use addChild(myComponent); So how to I
add the UIComponent to the Display list?
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="
http://www.adobe.com/2006/mxml"
layout="absolute" creationComplete="init()">
<mx:Script>
<![CDATA[
import LoadSwf
private var myLoader:LoadSwf
public function init():void{
myLoader=new LoadSwf()
]]>
</mx:Script>
</mx:Application>
Class:
package{
import flash.display.MovieClip;
import com.adobe.viewsource.ViewSource;
import flash.events.Event
import mx.core.UIComponent
import flash.display.Loader
import flash.events.TimerEvent;
import flash.events.StatusEvent
import flash.net.LocalConnection
import flash.net.URLRequest
import flash.net.URLVariables
import flash.utils.Timer;
public class LoadSwf{
private var request:URLRequest
private var loader:Loader = new Loader();
private var conn:LocalConnection = new LocalConnection();
private var myComponent:UIComponent=new UIComponent();
private var swfTimer:Timer;
private var myParameters:URLVariables ;
public function LoadSwf(){
request= new URLRequest("Login.swf");
myParameters= new URLVariables()
myParameters.loginID = "101";
myComponent.addChild(loader);
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
finishedLoading);
loader.load(request);
private function finishedLoading(e:Event):void{
//PROBLEM IN THE FOLLOWING LINE!!!!!!!
addChild(myComponent);
swfTimer = new Timer(10);
swfTimer.addEventListener(TimerEvent.TIMER,sendData);
swfTimer.start();
private function sendData(e:Event):void{
conn.addEventListener(StatusEvent.STATUS, onStatus);
conn.send("myConnection", "lcHandler",
myParameters.loginID);
private function onStatus(event:StatusEvent):void {
if (event.level=="status") {
trace("LocalConnection connected");
swfTimer.stop();
}else if (event.level=="error"){
trace("FAILED to connect")
}"SiHoop" <[email protected]> wrote in
message
news:[email protected]...
> If I try to convert as3 in an mxml file into a class
file and create an
> instance of the class, I am unable to add the instance
to the display
> list. The
> original mxml file is at the bottom of the page. The
modified mxml file
> and its
> associated class are below. The problem is that I cannot
use
> addChild(myComponent); So how to I add the UIComponent
to the Display
> list?
>
> <?xml version="1.0" encoding="utf-8"?>
> <mx:Application xmlns:mx="
http://www.adobe.com/2006/mxml"
> layout="absolute"
> creationComplete="init()">
> <mx:Script>
> <![CDATA[
> import LoadSwf
> private var myLoader:LoadSwf
> public function init():void{
> myLoader=new LoadSwf()
> }
> ]]>
> </mx:Script>
> </mx:Application>
> Class:
> package{
> import flash.display.MovieClip;
> import com.adobe.viewsource.ViewSource;
> import flash.events.Event
> import mx.core.UIComponent
> import flash.display.Loader
> import flash.events.TimerEvent;
> import flash.events.StatusEvent
> import flash.net.LocalConnection
> import flash.net.URLRequest
> import flash.net.URLVariables
> import flash.utils.Timer;
> public class LoadSwf{
> private var request:URLRequest
> private var loader:Loader = new Loader();
> private var conn:LocalConnection = new
LocalConnection();
> private var myComponent:UIComponent=new UIComponent();
> private var swfTimer:Timer;
> private var myParameters:URLVariables ;
> public function LoadSwf(){
> request= new URLRequest("Login.swf");
> myParameters= new URLVariables()
> myParameters.loginID = "101";
> myComponent.addChild(loader);
>
loader.contentLoaderInfo.addEventListener(Event.COMPLETE,
> finishedLoading);
> loader.load(request);
> }
> private function finishedLoading(e:Event):void{
> //PROBLEM IN THE FOLLOWING LINE!!!!!!!
> addChild(myComponent);
You didn't add this component to the Application, so I
wouldn't expect to
see anything you add in this component in the Application.
HTH;
Amy -
Question about timeline navigation and the display list-
I’ve got a movieclip called “rotatorProxy” that spans the entire timeline. I’ve got nav buttons that jump to various frames on that timeline. I need to get the display depth of rotatorProxy each time the nav buttons move the playhead. The AS3 code is easy enough:
var zIndex:int = this.getChildIndex(getChildByName("rotatorProxy")) ;
my problem is where to put it. If I put this code in any script that executes in the target frame, it works, but only if I hit the nav buttons slowly. If I bang on a single nav button rapidly, getChildByName("rotatorProxy”) can return null. I don’t know much about how the display list works but I assume the display list is rebuilt after every jump and the frame scripts are executing asynchronously, so it’s possible my getChildByName call is executed before the display list is complete. Is there an event or some other handle that would allow me to call my code before the frame is rendered but after the display list is complete?Wow, thanks for the fast response...
“if rotatorProxy exists in all frames, it should never return null.”
That’s what I thought, but not what I’m seeing, rapidly jumping around on the timeline seems to confuse the player and it temporarily looses track of rotatorProxy.
You can sort of see it in action here: http://www.appliedcd.com/newACT/act.html
The zIndex is used to establish the depth of the rotating screens which have been added to the display list via AS. If you bang on the nav buttons quickly you’ll see the stacking order screw up, if you had been in the development environment you’d see the null error thrown.
I’ll see if I can use the render event to sort this out. I know testing in the frame after the jump will work, but it’s cleaner if I can establish the proper stacking order before the first jump frame is rendered. -
Revision: 4023
Author: [email protected]
Date: 2008-11-05 11:10:38 -0800 (Wed, 05 Nov 2008)
Log Message:
Interim check-in for FXG as SWF graphics primitives, integrating Kaushal's prototype of programmatic linkage of TextGraphic instances with the appropriate parent DefineSprite in the SWF display list. This change temporarily adds awareness to [Embed] to allow sprites to be constructed from .fxg files.
QA: No
Doc: No
Checkintests: Pass
Modified Paths:
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/Transcoder.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/EmbedEvaluator.java
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/as3/EmbedUtil.java
flex/sdk/trunk/modules/compiler/src/java/flex2/tools/WebTierAPI.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/AbstractTextNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/GraphicContentNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/GraphicNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/GroupDefinitionNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/GroupNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/TextGraphicNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/text/ParagraphNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/dom/text/TextNode.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/sax/FXGSAXScanner.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/swf/TypeHelper.java
flex/sdk/trunk/modules/swfutils/src/java/flash/swf/tags/DefineSprite.java
Added Paths:
flex/sdk/trunk/modules/compiler/src/java/flex2/compiler/media/FXGTranscoder.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/swf/AbstractFXGGraphics.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/swf/SpriteClass.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/swf/TextFXGGraphics.java
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/swf/TextHelper.java
Removed Paths:
flex/sdk/trunk/modules/swfutils/src/java/flash/fxg/swf/FXGSWFGraphics.java -
Unable to load the EJB module. DeploymentContext does not contain any EJB.
I'm writing an enterprise application to familiarize myself with Glassfish 3.1.2 and EJB 3.1. I've created several local, stateless beans, and injected one into a JSF managed bean. The ejb and web modules compile fine, but when I launch the application with Glassfish I get the following startup error and the application does not deploy. I don't understand what it means, can someone ellaborate?
SEVERE: Exception while invoking class org.glassfish.ejb.startup.EjbDeployer prepare method
SEVERE: Exception while invoking class org.glassfish.javaee.full.deployment.EarDeployer prepare method
SEVERE: Exception while preparing the app
SEVERE: Unable to load the EJB module. DeploymentContext does not contain any EJB. Check the archive to ensure correct packaging for D:\Documents\NetBeansProjects\Test\dist\gfdeploy\Test\Test-war_war.
If you use EJB component annotations to define the EJB, and an ejb or web deployment descriptor is also used, please make sure that the deployment descriptor references a Java EE 5 or higher version schema, and that the metadata-complete attribute is not set to true, so the component annotations can be processed as expected
org.glassfish.deployment.common.DeploymentException: Unable to load the EJB module. DeploymentContext does not contain any EJB. Check the archive to ensure correct packaging for D:\Documents\NetBeansProjects\Test\dist\gfdeploy\Test\Test-war_war.
If you use EJB component annotations to define the EJB, and an ejb or web deployment descriptor is also used, please make sure that the deployment descriptor references a Java EE 5 or higher version schema, and that the metadata-complete attribute is not set to true, so the component annotations can be processed as expected
at org.glassfish.javaee.full.deployment.EarDeployer.prepare(EarDeployer.java:166)
at com.sun.enterprise.v3.server.ApplicationLifecycle.prepareModule(ApplicationLifecycle.java:871)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:410)
at com.sun.enterprise.v3.server.ApplicationLifecycle.deploy(ApplicationLifecycle.java:240)
at org.glassfish.deployment.admin.DeployCommand.execute(DeployCommand.java:389)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$1.execute(CommandRunnerImpl.java:348)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:363)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.doCommand(CommandRunnerImpl.java:1085)
at com.sun.enterprise.v3.admin.CommandRunnerImpl.access$1200(CommandRunnerImpl.java:95)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1291)
at com.sun.enterprise.v3.admin.CommandRunnerImpl$ExecutionContext.execute(CommandRunnerImpl.java:1259)
at com.sun.enterprise.v3.admin.AdminAdapter.doCommand(AdminAdapter.java:461)
at com.sun.enterprise.v3.admin.AdminAdapter.service(AdminAdapter.java:212)
at com.sun.grizzly.tcp.http11.GrizzlyAdapter.service(GrizzlyAdapter.java:179)
at com.sun.enterprise.v3.server.HK2Dispatcher.dispath(HK2Dispatcher.java:117)
at com.sun.enterprise.v3.services.impl.ContainerMapper$Hk2DispatcherCallable.call(ContainerMapper.java:354)
at com.sun.enterprise.v3.services.impl.ContainerMapper.service(ContainerMapper.java:195)
at com.sun.grizzly.http.ProcessorTask.invokeAdapter(ProcessorTask.java:860)
at com.sun.grizzly.http.ProcessorTask.doProcess(ProcessorTask.java:757)
at com.sun.grizzly.http.ProcessorTask.process(ProcessorTask.java:1056)
at com.sun.grizzly.http.DefaultProtocolFilter.execute(DefaultProtocolFilter.java:229)
at com.sun.grizzly.DefaultProtocolChain.executeProtocolFilter(DefaultProtocolChain.java:137)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:104)
at com.sun.grizzly.DefaultProtocolChain.execute(DefaultProtocolChain.java:90)
at com.sun.grizzly.http.HttpProtocolChain.execute(HttpProtocolChain.java:79)
at com.sun.grizzly.ProtocolChainContextTask.doCall(ProtocolChainContextTask.java:54)
at com.sun.grizzly.SelectionKeyContextTask.call(SelectionKeyContextTask.java:59)
at com.sun.grizzly.ContextTask.run(ContextTask.java:71)
at com.sun.grizzly.util.AbstractThreadPool$Worker.doWork(AbstractThreadPool.java:532)
at com.sun.grizzly.util.AbstractThreadPool$Worker.run(AbstractThreadPool.java:513)
at java.lang.Thread.run(Thread.java:722)My guess is that you deployed an ejb without bean in it. when you have an ejb module, be sure you have at least one bean present.
Are you sure you have implementend some beans? Or did you do this only in the web module?
Try adding an @Stateless bean doing nothing in you ejb module, redeploy and let me know if that works -
I have "Accept cookies from sites" unchecked. I have a list of exceptions for domains that I allow to set cookies. However, it seems some site not on my exception list are automatically added to my list when they want to set cookies.
Why/how is this happening?Hello cor-el, thanks for your reply. I changed my settings for downloads to desktop and it has appeared on there. When I double click I am asked which program I want to open file. I click firefox and another box "opening install" says I have chosen to open the file which is an application and do I want to save it. This is the only real option so I press save file. I get a box saying this is an executable file which may contain viruses - do you want to run. I press ok and the final box showing C drive file name and desktop appears stating application not found.
This happens the same whenever I try to install.
To my untrained eye the application is not being recognised as an application and I cannot work out how to get it to do that.
My plugin is still showing as out of date.
Is there anything you could suggest. Thanks for your time. -
I am working with a custom table zscs_record.
data is being fetched in the perform upload_workarea.
but the list contains no data.
there might be any problem with the display_log.
if anybody plz can find where is the mistake full points will be rewarded.
just copy the program and execute it.
REPORT yreport1 LINE-SIZE 260
NO STANDARD PAGE HEADING
MESSAGE-ID zsc_supply_chain.
T Y P E - P O O L S *
TYPE-POOLS: SLIS.
C o n s t a n t V A R I A B L E S *
CONSTANTS: c_e TYPE char1 VALUE 'E',
c_a TYPE char1 VALUE 'A',
c_s TYPE char1 VALUE 'S',
c_x TYPE char1 VALUE 'X',
c_dynpro_0201(4) TYPE c VALUE '0201',
c_prognam(12) TYPE c VALUE 'SAPRCKM_MR22',
c_dynpro_1000(4) TYPE c VALUE '1000',
c_dynpro_0120(4) TYPE c VALUE '0120',
c_okcode(10) TYPE c VALUE 'BDC_OKCODE',
c_entr(5) TYPE c VALUE '=ENTR',
c_dummy(6) TYPE c VALUE '=DUMMY',
c_down(5) TYPE c VALUE '=DOWN',
c_save(5) TYPE c VALUE '=SAVE',
c_back(5) TYPE c VALUE '=BACK',
c_onli(5) TYPE c VALUE '=ONLI',
c_ee(3) TYPE c VALUE '/EE',
c_one TYPE ckml_kongr VALUE '1' ,
c_bkpf(4) TYPE c VALUE 'BKPF',
c_wfp TYPE bukrs VALUE 'WFP',
c_sa TYPE blart VALUE 'SA',
c_ags TYPE ktosl VALUE 'AGS',
c_usd TYPE waers_iso VALUE 'USD',
c_budat(14) TYPE c VALUE 'MR21HEAD-BUDAT',
c_bukrs(14) TYPE c VALUE 'MR21HEAD-BUKRS',
c_werks(14) TYPE c VALUE 'MR21HEAD-WERKS',
c_xblnr(14) TYPE c VALUE 'MR21HEAD-XBLNR',
c_kongr(14) TYPE c VALUE 'CKMLKONT-KONGR',
c_bktxt(14) TYPE c VALUE 'MR21HEAD-BKTXT',
c_mr22 TYPE tstc-tcode VALUE 'MR22',
c_f13 TYPE tstc-tcode VALUE 'F.13',
c_n(1) TYPE c VALUE 'N',
c_bag TYPE char9 VALUE '%Bagging%',
c_ltsh TYPE char12 VALUE '%LTSH%Clear%',
c_trnsf TYPE char30 VALUE '%Transformation%Clear%',
c_ste TYPE char20 VALUE '%Stevedoring%Clear%',
c_mat TYPE char30 VALUE '%Material%Revaluation',
c_mat1 TYPE char8 VALUE 'MATERIAL',
c_rev TYPE char10 VALUE 'REVOLUTION',
c_tabname TYPE tabname VALUE 'ZSCT_RECORD',
c_prognam3(7) TYPE c VALUE 'SAPF124',
c_prognam4(8) TYPE c VALUE 'SAPMSSY0',
c_cursor(10) TYPE c VALUE 'BDC_CURSOR',
c_konts_low(9) TYPE c VALUE 'KONTS-LOW',
c_bukrx_low(9) TYPE c VALUE 'BUKRX-LOW',
c_saknr(7) TYPE c VALUE 'X_SAKNR',
c_augdt(5) TYPE c VALUE 'AUGDT',
c_testl(5) TYPE c VALUE 'TESTL',
c_xausbel(7) TYPE c VALUE 'XAUSBEL',
c_xnausbel(8) TYPE c VALUE 'XNAUSBEL',
c_fehler(8) TYPE c VALUE 'X_FEHLER',
c_mr21(23) TYPE c VALUE 'MR21HEAD-SCREEN_VARIANT',
c_lagmat(18) TYPE c VALUE 'LAGERMATERIAL_0250',
c_psp(30) TYPE c VALUE 'PSP-ELEMENT - OHNE BWKEY_0250',
c_ckmatnr(20) TYPE c VALUE 'CKI_MR22_0250-MATNR(',
c_ckzuumb(20) TYPE c VALUE 'CKI_MR22_0250-ZUUMB(',
c_ckpspnr(20) TYPE c VALUE 'CKI_MR22_0250-PSPNR(',
c_ckbwkey(20) TYPE c VALUE 'CKI_MR22_0250-BWKEY(',
c_sp(1) TYPE c VALUE ')',
c_shkzg1 TYPE shkzg VALUE 'H',
c_shkzg2 TYPE shkzg VALUE 'S',
*For ALV column positions
c_col_pos1 TYPE sycucol VALUE '01',
c_col_pos2 TYPE sycucol VALUE '02',
c_col_pos3 TYPE sycucol VALUE '03',
c_col_pos4 TYPE sycucol VALUE '04',
c_col_pos5 TYPE sycucol VALUE '05',
c_col_pos6 TYPE sycucol VALUE '06',
c_col_pos7 TYPE sycucol VALUE '07',
c_col_pos8 TYPE sycucol VALUE '08',
c_col_pos9 TYPE sycucol VALUE '09',
c_col_pos10 TYPE sycucol VALUE '10',
c_col_pos11 TYPE sycucol VALUE '11',
c_col_pos12 TYPE sycucol VALUE '12',
c_col_pos13 TYPE sycucol VALUE '13',
c_col_pos14 TYPE sycucol VALUE '14',
c_col_pos15 TYPE sycucol VALUE '15',
*For ALV Field Names of final Table
c_fld_recid TYPE slis_fieldname VALUE 'RECID', "Record ID number
c_fld_kongr TYPE slis_fieldname VALUE 'KONGR', "Reason code
c_fld_hkont TYPE slis_fieldname VALUE 'HKONT', "GL Account
c_fld_projk TYPE slis_fieldname VALUE 'PROJK', "Project code
c_fld_werks TYPE slis_fieldname VALUE 'WERKS', "Plant
c_fld_matnr TYPE slis_fieldname VALUE 'MATNR', "Commodity
c_fld_zcptp TYPE slis_fieldname VALUE 'ZCPTP', "Cose portion to be posted
c_fld_zerrf TYPE slis_fieldname VALUE 'ZERRF', "Success flag
c_fld_zerrc TYPE slis_fieldname VALUE 'ZERRC', "Error code
c_fld_zertx TYPE slis_fieldname VALUE 'ZERTX', "Error txt
c_fld_hkont1 TYPE slis_fieldname VALUE 'HKONT',
c_fld_opbal TYPE slis_fieldname VALUE 'OPBAL',
c_fld_exp TYPE slis_fieldname VALUE 'EXP',
c_fld_cap TYPE slis_fieldname VALUE 'CAP',
c_fld_err TYPE slis_fieldname VALUE 'ERR',
c_table TYPE slis_tabname VALUE 'i_log_disp'.
*T Y P E S *
*Structure for uploading the data for further processing
TYPES: BEGIN OF t_zscs_record ,
recid TYPE zderecid, "Record id number
zerrf TYPE zdeerrf, "Processed \ not processed flag - FLAG X Success Blank
cpudt TYPE cpudt, "Day On Which Accounting Document Was Entered
kongr TYPE ckml_kongr, "Account Assignment Reason
hkont TYPE hkont, "General Ledger Account
projk TYPE char30, "WBS Element
werks TYPE werks_d, "Plant
matnr TYPE matnr, "Material Number
zcptp TYPE zdecptp, "cost portion to be posted
belnr TYPE belnr_d, "Accounting Document Number
zerrc TYPE zdeerrc, "Error code
zertx TYPE zdeertx, "Error text
set TYPE numc2,
END OF t_zscs_record ,
*Structre for modified WBS element
BEGIN OF t_zscs_record_m ,
recid TYPE zderecid, "Record id number
zerrf TYPE zdeerrf, "Processed \ not processed flag - FLAG X Success Blank
cpudt TYPE cpudt, "Day On Which Accounting Document Was Entered
kongr TYPE ckml_kongr, "Account Assignment Reason
hkont TYPE hkont, "General Ledger Account
projk TYPE char24,
werks TYPE werks_d, "Plant
matnr TYPE matnr, "Material Number
zcptp TYPE zdecptp, "cost portion to be posted
belnr TYPE belnr_d, "Accounting Document Number
zerrc TYPE zdeerrc, "Error code
zertx TYPE zdeertx, "Error text
set TYPE numc2,
END OF t_zscs_record_m,
*Structure for retrieving data from custom table ZSCT_AUTOINV
BEGIN OF t_zsct_autoinv,
saknr TYPE saknr, "G/L Account Number
fipos TYPE fm_fipex, "Commitment Item
geber TYPE bp_geber, "Fund
saknr_off TYPE saknr, "G/L Account Number
fipos_off TYPE fm_fipex, "Commitment Item
END OF t_zsct_autoinv,
*Structure for retrieving data from database table FMBDT
BEGIN OF t_fmbdt,
rldnr TYPE rldnr, "Ledger
rrcty TYPE rrcty, "Record Type
rvers TYPE versn, "Version
ryear TYPE gjahr, "Fiscal Year
robjnr TYPE gobjnr_r, "Object number for objects (account assignment elements)
cobjnr TYPE gobjnr_c, "Object number for transaction attributes
sobjnr TYPE gobjnr_s, "Object number for partner objects (accnt assignmnt elements)
rtcur TYPE rtcur, "Currency Key
drcrk TYPE shkzg, "Debit/Credit Indicator
rpmax TYPE rpmax, "period
rfund TYPE fm_fund, "Fund
rfundsctr TYPE fistl, "Funds Center
rmeasure TYPE fm_measure, "Funded Program
END OF t_fmbdt,
*Structure for retrieveing data from table SKAT
BEGIN OF t_skat,
spras TYPE spras, "Language Key
ktopl TYPE ktopl, "Chart of Accounts
saknr TYPE saknr, "G/L Account Number
txt50 TYPE txt50_skat, "G/L Account Long Text
END OF t_skat,
*Structure for tracking the errors occured during document posting
*through standard BAPI
BEGIN OF t_error_bapi,
number TYPE symsgno,
message TYPE bapi_msg,
recid TYPE zderecid,
set TYPE numc2,
END OF t_error_bapi,
*Structure for tracking the success occured during document posting
*through standard BAPI
BEGIN OF t_suc_bapi,
belnr TYPE belnr_d,
message TYPE bapi_msg,
recid TYPE zderecid,
set TYPE numc2,
END OF t_suc_bapi,
*Structure for tracking the errors occured during document posting
*through MR22 transaction code
BEGIN OF t_error_bdc,
recid TYPE zderecid, "Record id number
number TYPE symsgno,
message TYPE bapi_msg,
set TYPE numc2,
END OF t_error_bdc,
*Structure for tracking the document no. occured during successful posting
*through MR22 transaction code
BEGIN OF t_suc_bdc,
recid TYPE zderecid, "Record id number
var TYPE sy-msgv1,
message TYPE bapi_msg,
set TYPE numc2,
END OF t_suc_bdc,
BEGIN OF t_log_disp,
recid TYPE zderecid, "Record id number
kongr TYPE ckml_kongr, "Account Assignment Reason
hkont TYPE hkont, "General Ledger Account
projk TYPE char30, "WBS Element
werks TYPE werks_d, "Plant
matnr TYPE matnr, "Material Number
zcptp TYPE zdecptp, "cost portion to be posted
zerrf TYPE zdeerrf, "Processed \ not processed flag - FLAG X Success Blank
zerrc TYPE zdeerrc, "Error code
zertx TYPE zdeertx, "Error text
hkont1 TYPE hkont,
opbal TYPE dmbtr,
exp TYPE dmbtr,
cap TYPE dmbtr,
err TYPE dmbtr,
END OF t_log_disp.
*Field symbols declared for BAPIRET2
FIELD-SYMBOLS: <fs_return> TYPE bapiret2.
G l o b a l W O R K A R E A S *
DATA: w_zscs_record TYPE t_zscs_record,
w_zscs_record_mod TYPE t_zscs_record,
w_fmbdt TYPE t_fmbdt,
w_bapi TYPE t_zscs_record,
w_bdc TYPE t_zscs_record,
w_temp TYPE t_zscs_record, "#EC NEEDED
w_bapiheader TYPE bapiache09,
w_return TYPE bapiret2,
w_accoutgl TYPE bapiacgl09,
w_currency TYPE bapiaccr09,
w_bdcdata TYPE bdcdata,
w_messtab TYPE bdcmsgcoll,
w_error_bapi TYPE t_error_bapi,
w_suc_bapi TYPE t_suc_bapi,
w_error_bdc TYPE t_error_bdc,
w_suc_bdc TYPE t_suc_bdc,
w_fieldcatalog TYPE slis_fieldcat_alv, "Workarea for populating fieldcatalog
w_log_disp TYPE t_log_disp.
I n t e r n a l T a b l e s *
DATA: i_zscs_record TYPE STANDARD TABLE OF t_zscs_record,
i_zscs_record1 TYPE STANDARD TABLE OF t_zscs_record,
i_bapi TYPE STANDARD TABLE OF t_zscs_record,
i_bdc TYPE STANDARD TABLE OF t_zscs_record,
i_fmbdt TYPE STANDARD TABLE OF t_fmbdt,
i_accoutgl TYPE STANDARD TABLE OF bapiacgl09,
i_currency TYPE STANDARD TABLE OF bapiaccr09,
i_return TYPE STANDARD TABLE OF bapiret2,
i_bdcdata TYPE STANDARD TABLE OF bdcdata INITIAL SIZE 0,
i_messtab TYPE STANDARD TABLE OF bdcmsgcoll INITIAL SIZE 0,
i_bdcdata1 TYPE STANDARD TABLE OF bdcdata INITIAL SIZE 0,
i_messtab1 TYPE STANDARD TABLE OF bdcmsgcoll INITIAL SIZE 0,"#EC NEEDED
i_autoinv TYPE STANDARD TABLE OF t_zsct_autoinv,
i_autoinv1 TYPE STANDARD TABLE OF t_zsct_autoinv,
i_error_bapi TYPE STANDARD TABLE OF t_error_bapi,
i_suc_bapi TYPE STANDARD TABLE OF t_suc_bapi,
i_error_bdc TYPE STANDARD TABLE OF t_error_bdc,
i_suc_bdc TYPE STANDARD TABLE OF t_suc_bdc,
i_fieldcatalog TYPE slis_t_fieldcat_alv,
i_log_disp TYPE STANDARD TABLE OF t_log_disp. "internal table for final log display
G l o b a l V A R I A B L E S *
DATA: v_rec TYPE string,
v_rec1 TYPE string,
v_count TYPE numc2 VALUE 1,
v_flag TYPE char1, "#EC NEEDED
v_subrc TYPE sysubrc,
v_objkey TYPE awkey,
v_amt TYPE zdecptp,
v_txt50 TYPE txt50_skat,
v_pspid TYPE ps_pspid, "#EC NEEDED
v_totexppe TYPE zdecptp,
v_totcapit TYPE zdecptp,
v_toterror TYPE zdecptp,
v_todmbtr TYPE dmbtr,
v_repid TYPE sy-repid.
S E L E C T I O N - S C R E E N D E F I N I T I O N *
S E L E C T I O N - S C R E E N *
*Begin of inv selection block
SELECTION-SCREEN BEGIN OF BLOCK inv WITH FRAME TITLE text-001.
PARAMETERS: p_pstdat TYPE budat DEFAULT sy-datum, "Posting Date
p_rtmode AS CHECKBOX DEFAULT c_x, "Run in test mode
p_prsall RADIOBUTTON GROUP rad DEFAULT 'X' USER-COMMAND com, "Process All
p_cstcpt RADIOBUTTON GROUP rad, "Process cost to be capitalized
p_cstexp RADIOBUTTON GROUP rad, "Process cost to be expensed
p_exauto AS CHECKBOX. "Execute Automatic Clearing
SELECTION-SCREEN END OF BLOCK inv.
*End of inv selection block
I N I T I A L I Z A T I O N *
INITIALIZATION.
Subroutine for clearing the memory space
PERFORM clear_memory. "To clear the memory space.
A T S E L E C T I O N - S C R E E N O U T P U T *
AT SELECTION-SCREEN OUTPUT.
For checking the Clearing program through transaction code F.13 only
when user selects the radio button Process All
IF p_prsall = c_x. "Process All
p_exauto = c_x. "Execute Automatic Clearing
ELSE.
p_exauto = ' '. "Execute Automatic Clearing
ENDIF.
MODIFY SCREEN.
START OF SELECTION *
START-OF-SELECTION.
Subroutine for uploading data from custom database table
ZSCT_RECORD based on the condition selected by user
PERFORM upload_workarea.
END OF SELECTION *
END-OF-SELECTION.
Subroutine for populating the respective internal tables
for posting the documents either through standard BAPI or MR22 transaction code
PERFORM populate_bapi_bdc.
IF NOT i_bapi[] IS INITIAL.
Subroutine for posting documents through standard BAPI
PERFORM post_bapi.
ENDIF.
IF NOT i_bdc[] IS INITIAL.
Subroutine for posting documents through MR22 transaction code
PERFORM call_transaction_mr22.
ENDIF.
Subroutine for automatic clearing
IF p_exauto = c_x.
PERFORM clear_f13.
ENDIF.
IF ( ( i_error_bapi IS NOT INITIAL ) OR ( i_error_bdc IS NOT INITIAL ) ).
Subroutine for displaying the log file
PERFORM display_log.
ENDIF.
PERFORM FINAL_list.
*& Form CLEAR_MEMORY
text
form CLEAR_MEMORY.
Refreshing the global internal tables
REFRESH: i_zscs_record,
i_zscs_record1,
i_bapi,
i_bdc,
i_fmbdt,
i_accoutgl,
i_currency,
i_return,
i_bdcdata,
i_messtab,
i_bdcdata1,
i_messtab1,
i_autoinv,
i_error_bapi,
i_suc_bapi,
i_error_bdc,
i_suc_bdc.
Clearing the global work areas
CLEAR: w_zscs_record,
w_zscs_record_mod,
w_fmbdt,
w_bapi,
w_bdc,
w_temp,
w_bapiheader,
w_return,
w_accoutgl,
w_currency,
w_bdcdata,
w_messtab,
w_error_bapi,
w_suc_bapi,
w_error_bdc,
w_suc_bdc,
*Clearing the global variables
v_rec,
v_rec1,
v_flag,
v_subrc,
v_objkey,
v_amt,
v_pspid.
endform. " CLEAR_MEMORY
*& Form UPLOAD_WORKAREA
Subroutine for uploading data from custom database table *
ZSCT_RECORD based on the condition selected by user *
form UPLOAD_WORKAREA .
IF p_prsall = c_x.
Selecting the non processed data from table ZSCT_RECORD
SELECT recid "#EC CI_NOFIRST "Record id number
zerrf "Processed\not processed flag
cpudt "Day On Which Accounting Document Was Entered
kongr "Account Assignment Reason
hkont "General Ledger Account
projk "WBS Element
werks "Plant
matnr "Material Number
zcptp "cost portion to be posted
belnr "Accounting Document Number
zerrc "Error code
zertx "Error text
FROM zsct_record
INTO TABLE i_zscs_record
WHERE zerrf NE space
AND cpudt = '20081022'.
IF sy-subrc NE 0.
MESSAGE text-021 TYPE 'I'.
LEAVE LIST-PROCESSING.
ENDIF.
ELSEIF p_cstcpt = c_x.
Selecting the non processed data from table ZSCT_RECORD
SELECT recid "#EC CI_NOFIRST
zerrf
cpudt
kongr
hkont
projk
werks
matnr
zcptp
belnr
zerrc
zertx
FROM zsct_record
INTO TABLE i_zscs_record
WHERE zerrf NE space
AND kongr <> c_e.
IF sy-subrc NE 0.
MESSAGE text-021 TYPE 'I'.
LEAVE LIST-PROCESSING.
ENDIF.
ELSEIF p_cstexp = c_x.
Selecting the non processed data from table ZSCT_RECORD
SELECT recid "#EC CI_NOFIRST
zerrf
cpudt
kongr
hkont
projk
werks
matnr
zcptp
belnr
zerrc
zertx
FROM zsct_record
INTO TABLE i_zscs_record
WHERE zerrf NE space
AND kongr EQ c_e.
IF sy-subrc NE 0.
MESSAGE text-021 TYPE 'I'.
LEAVE LIST-PROCESSING.
ENDIF.
ENDIF.
IF sy-subrc = 0.
Sort the internal table by record id
SORT i_zscs_record BY recid.
ENDIF.
endform. " UPLOAD_WORKAREA
*& Form POPULATE_BAPI_BDC *
Subroutine for posting documents through standard BAPI *
FORM populate_bapi_bdc.
DATA: v_tabix TYPE sy-tabix.
Sort the data retrieved from ZSCT_RECORD by KONGR,HKONT & PROJK
SORT i_zscs_record BY kongr hkont projk.
IF NOT i_zscs_record IS INITIAL.
LOOP AT i_zscs_record INTO w_zscs_record_mod.
v_tabix = sy-tabix.
Check if the record id is initial
IF NOT w_zscs_record_mod-recid IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = w_zscs_record_mod-recid
IMPORTING
output = w_zscs_record-recid.
ENDIF.
Check if the reason code is initial
IF NOT w_zscs_record_mod-kongr IS INITIAL.
CALL FUNCTION 'CONVERSION_EXIT_ALPHA_OUTPUT'
EXPORTING
input = w_zscs_record_mod-kongr
IMPORTING
output = w_zscs_record-kongr.
ENDIF.
Assign the values
w_zscs_record-hkont = w_zscs_record_mod-hkont.
CALL FUNCTION 'CONVERSION_EXIT_ABPSP_OUTPUT'
EXPORTING
input = w_zscs_record_mod-projk
IMPORTING
output = w_zscs_record-projk.
w_zscs_record-werks = w_zscs_record_mod-werks.
w_zscs_record-matnr = w_zscs_record_mod-matnr.
w_zscs_record-zcptp = w_zscs_record_mod-zcptp.
w_zscs_record-cpudt = w_zscs_record_mod-cpudt.
Concatenate KONGR,HKONT & PROJK value to make an unique combination to populate the separete
internal table relevant for posting through BAPI and MR22 transaction
CONCATENATE w_zscs_record-kongr w_zscs_record-hkont w_zscs_record-projk INTO v_rec.
IF v_tabix NE 1.
IF v_rec1 = v_rec.
v_count = v_count. "#EC NEEDED
ELSE.
v_count = v_count + 1.
ENDIF.
ENDIF.
Populate the set number into the two different internal table
relevant for posting through BAPI and MR22 transaction
w_zscs_record-set = v_count.
If the KONGR (Reason code) value is equal to 'E' then the
posting will be occur through standard BAPI
IF w_zscs_record-kongr = c_e.
APPEND w_zscs_record TO i_bapi.
If the KONGR (Reason code) value is not equal to 'E' then the
posting will be occur through MR22 transaction code
ELSEIF w_zscs_record-kongr NE c_e.
APPEND w_zscs_record TO i_bdc.
ENDIF.
v_rec1 = v_rec.
Clear the memory
CLEAR: w_zscs_record,
v_rec.
ENDLOOP.
ENDIF.
endform. " POPULATE_BAPI_BDC
*& Form POST_BAPI
text
form POST_BAPI .
Local structre declaration
TYPES:
Structre for populating record id
BEGIN OF lt_recid,
recid TYPE zderecid,
END OF lt_recid,
Structre for table PRPS
BEGIN OF lt_prps,
pspnr TYPE ps_intnr, "WBS Element
posid TYPE ps_posid, "Work Breakdown Structure Element (WBS Element)
pgsbr TYPE ps_pgsbr, "Business area for WBS element
func_area TYPE fkber, "Functional Area
END OF lt_prps .
Local data declaration
DATA: lw_bapi TYPE t_zscs_record,
lw_bapi1 TYPE t_zscs_record,
lw_recid TYPE lt_recid,
li_recid TYPE STANDARD TABLE OF lt_recid, "#EC NEEDED
li_prps TYPE STANDARD TABLE OF lt_prps,
lw_prps TYPE lt_prps,
li_temp TYPE STANDARD TABLE OF t_zscs_record,
li_temp1 TYPE STANDARD TABLE OF t_zscs_record,
li_bapi TYPE STANDARD TABLE OF t_zscs_record,
li_bapi_m TYPE STANDARD TABLE OF t_zscs_record_m,
lw_bapi_m TYPE t_zscs_record_m,
li_skat TYPE STANDARD TABLE OF t_skat,
li_skat1 TYPE STANDARD TABLE OF t_skat,
li_skat2 TYPE STANDARD TABLE OF t_skat,
lw_temp TYPE t_zscs_record,
li_autoinv TYPE STANDARD TABLE OF t_zsct_autoinv,
lw_autoinv TYPE t_zsct_autoinv,
lv_count TYPE numc10,
lw_skat TYPE t_skat,
lw_skat1 TYPE t_skat, "#EC NEEDED
lw_skat2 TYPE t_skat, "#EC NEEDED
lv_count1 TYPE numc10,
lw_index TYPE sy-index.
Assigning the I_BAPI data to a local internal table
li_temp[] = i_bapi[].
li_bapi[] = i_bapi[].
li_temp1[] = i_bapi[].
Sort the internal table by SET
SORT i_bapi BY set.
Sort the internal table LI_TEMP by SET
SORT li_temp BY set.
Delete adjacent duplicates from LI_TEMP compring SET
DELETE ADJACENT DUPLICATES FROM li_temp COMPARING set.
Sort the internal table LI_TEMP1 by PROJK
SORT li_temp1 BY projk.
Delete adjacent duplicates from LI_TEMP1 compring PROJK
DELETE ADJACENT DUPLICATES FROM li_temp1 COMPARING projk.
Sort the internal table LI_BAPI by HKONT
SORT li_bapi BY hkont.
Delete adjacent duplicates from LI_BAPI compring HKONT
DELETE ADJACENT DUPLICATES FROM li_bapi COMPARING hkont.
Check if the li_bapi is initial or not
IF NOT li_bapi[] IS INITIAL.
Retrieve the text information from database table SKAT
for all the G/L Account relevant to LTSH Overland Clearing Account/
Transformation Clearing / Stevedoring Clearing Account / Bagging Clearing Account
SELECT spras "#EC CI_SGLSELECT
ktopl
saknr
txt50
FROM skat
INTO TABLE li_skat
FOR ALL ENTRIES IN li_bapi
WHERE spras = c_e
AND saknr = li_bapi-hkont
AND ( txt50 LIKE c_bag
OR txt50 LIKE c_ltsh
OR txt50 LIKE c_trnsf
OR txt50 LIKE c_ste
OR txt50 LIKE c_mat ).
IF sy-subrc EQ 0.
SORT li_skat1 BY saknr.
ENDIF.
Spiliting the internal table with respect to the TXT50
LOOP AT li_skat INTO lw_skat.
v_txt50 = lw_skat-txt50.
TRANSLATE v_txt50 TO UPPER CASE. "#EC SYNTCHAR
IF v_txt50 CS c_mat1 AND
v_txt50 CS c_rev.
Internal table regaring all the G/L Account relevant to Material revolution Account
APPEND lw_skat TO li_skat2.
ELSE.
Internal table regaring all the G/L Account relevant to LTSH Overland Clearing Account/
Transformation Clearing / Stevedoring Clearing Account / Bagging Clearing Account
APPEND lw_skat TO li_skat1.
ENDIF.
CLEAR: lw_skat,
v_txt50.
ENDLOOP.
REFRESH: li_skat.
Retrieve required data from custom table ZSCT_AUTOINV
SELECT saknr
fipos
geber
saknr_off
fipos_off
FROM zsct_autoinv
INTO TABLE li_autoinv
FOR ALL ENTRIES IN li_bapi
WHERE saknr = li_bapi-hkont.
IF sy-subrc = 0.
Sort li_autoinv by GEBER
i_autoinv1 = li_autoinv.
SORT li_autoinv BY geber.
Delete adjacent duplicates from li_autoinv comparing GEBER
DELETE ADJACENT DUPLICATES FROM li_autoinv COMPARING geber.
ENDIF.
IF NOT li_autoinv[] IS INITIAL.
Retrieve required data from database table FMBDT
SELECT rldnr
rrcty
rvers
ryear
robjnr
cobjnr
sobjnr
rtcur
drcrk
rpmax
rfund
rfundsctr
rmeasure
FROM fmbdt "#EC CI_NOFIRST
INTO TABLE i_fmbdt
FOR ALL ENTRIES IN li_autoinv
WHERE ryear = p_pstdat+0(4)
AND rfund = li_autoinv-geber.
ENDIF.
IF sy-subrc = 0.
SORT i_fmbdt BY rfund.
ENDIF.
ENDIF.
Populate the internal table with the modified WBS element
value for further processing
LOOP AT i_bapi INTO w_bapi.
lw_bapi_m-recid = w_bapi-recid.
lw_bapi_m-zerrf = w_bapi-zerrf.
lw_bapi_m-cpudt = w_bapi-cpudt.
lw_bapi_m-kongr = w_bapi-kongr.
lw_bapi_m-hkont = w_bapi-hkont.
lw_bapi_m-projk = w_bapi-projk.
lw_bapi_m-werks = w_bapi-werks.
lw_bapi_m-matnr = w_bapi-matnr.
lw_bapi_m-zcptp = w_bapi-zcptp.
lw_bapi_m-belnr = w_bapi-belnr.
lw_bapi_m-zerrc = w_bapi-zerrc.
lw_bapi_m-zertx = w_bapi-zertx.
lw_bapi_m-set = w_bapi-set.
APPEND lw_bapi_m TO li_bapi_m.
CLEAR: lw_bapi_m.
ENDLOOP.
Sort LI_BAPI_M by WBS element
SORT li_bapi_m BY projk.
Delete adjacent duplicates from LI_BAPI_M comparing WBS element
DELETE ADJACENT DUPLICATES FROM li_bapi_m COMPARING projk.
Check if LI_BAPI_M is initial
IF NOT li_bapi_m[] IS INITIAL.
Retrieve the required data from table PRPS for all the
WBS element
SELECT pspnr
posid
pgsbr
func_area
FROM prps
INTO TABLE li_prps
FOR ALL ENTRIES IN li_bapi_m
WHERE posid = li_bapi_m-projk.
IF sy-subrc = 0.
SORT li_prps BY posid.
ENDIF.
ENDIF.
lw_index = 1.
LOOP AT li_temp INTO lw_temp.
w_temp = lw_temp.
clearing workares
CLEAR: w_bapiheader,
lv_count,
v_amt.
****Populating the BAPIHEADER*******
Reference Transaction
w_bapiheader-bus_act = c_bkpf.
User Name
w_bapiheader-username = sy-uname.
Document Header Text
w_bapiheader-header_txt = text-020.
Company Code
w_bapiheader-comp_code = c_wfp.
Document Date in the Document
w_bapiheader-doc_date = p_pstdat.
Posting Date in the Document
w_bapiheader-pstng_date = p_pstdat.
Fiscal Year
w_bapiheader-fisc_year = p_pstdat+0(4).
Fiscal Period
w_bapiheader-fis_period = p_pstdat+4(2).
Document Type
w_bapiheader-doc_type = c_sa.
Reference Document Number
w_bapiheader-ref_doc_no = sy-datum.
Initialize the counter
lv_count = 1.
lv_count1 = 1.
LOOP AT i_bapi INTO lw_bapi FROM lw_index.
IF lw_temp-set NE lw_bapi-set.
lw_index = sy-tabix.
EXIT.
ELSE.
lw_bapi1 = lw_bapi.
CLEAR: v_pspid.
READ TABLE li_prps INTO lw_prps WITH KEY posid = lw_bapi-projk BINARY SEARCH.
IF sy-subrc = 0.
w_accoutgl-bus_area = lw_prps-pgsbr.
w_accoutgl-func_area = lw_prps-func_area.
ENDIF.
*****Populating the internal table regarding G/L account item***********
w_accoutgl-itemno_acc = lv_count.
w_accoutgl-acct_key = c_ags.
w_accoutgl-acct_type = c_s.
w_accoutgl-grant_nbr = text-019.
w_accoutgl-wbs_element = lw_bapi-projk.
READ TABLE i_autoinv1 INTO lw_autoinv WITH KEY saknr = lw_bapi-hkont.
IF sy-subrc = 0.
Get the information for the G/L accounts relevant for LTSH OVERland Clearing account or
Transformation Clearing Account Stevedoring Clearing Account or Bagging Clearing Account
READ TABLE li_skat1 INTO lw_skat1 WITH KEY saknr = lw_autoinv-saknr BINARY SEARCH.
IF sy-subrc = 0.
w_accoutgl-gl_account = lw_bapi-hkont.
IF NOT lw_autoinv-fipos EQ space.
CALL FUNCTION 'CONVERSION_EXIT_FMCIS_INPUT'
EXPORTING
input = lw_autoinv-fipos
IMPORTING
output = w_accoutgl-cmmt_item.
ELSE.
w_accoutgl-cmmt_item = lw_autoinv-saknr.
ENDIF.
w_currency-amt_doccur = lw_bapi-zcptp * ( -1 ).
ENDIF.Debug. and find the problem . since you are not using the standadrd tables , they are custom tables. so try to find the reason using debugging. may be you don't have data which satisfies the selection criteria.
-
Doc type AB - List contains no Data
Hi SAP team,
I am facing an issue that I could not find a similar one in here.
When FB03 is displayed, no items are shown. It shows, however, List Contains no Data.
In the Header option, I can view that the documents were entered by a Batch ID under t_code FBS1
Document Header Text says: Autom. Clearing SAPF124
Document Status B
Can anyone shed any light as to why FB03 has nothing (this has been happening for many years) and what is the meaning of Doc Status B ?
This is not a layout issue as many threads have mentioned. This must be something else that the Batch ID is running.
Any help is welcome
Regards
RogerThank you for your valuable input.
One topic only needs clarification.
Any idea of what Document Status A and Status B means?
(you can see this A B status in the header icon - FB03)
Regards,
Rogerio -
See Burger Error in BICMODULE-module:Adapter call failed. Reason: null
Hello All,
Scenario IDOC to File using Seeburger BIC problems in in my receiver adapter when converting from XML to EDI.
Error is:
"Message processing failed. Cause: Error in BICMODULE-module:Adapter call failed. Reason: null"
The Seeburger modules used in my receiver adapter:
1 localejbs/CallBicXIRaBean Local Enterprise Bean BIC_MT
2 localejbs/CallBicXIRaBean Local Enterprise Bean BIC
3 localejbs/Seeburger/FileStore Local Enterprise Bean ARCHIVE_EDI
4 CallSapAdapter Local Enterprise Bean 0
with following module configurations
BIC destDelimiter @http://seeburger.com/xi/bic/destDelimiter
BIC destSourceMsg source
BIC destTargetMsg MainDocument
BIC dynamicConfiguration true
BIC newLine true
BIC useAttribIfSet true
BIC_MT PartnerLookup on
BIC_MT destSourceMsg MainDocument
BIC_MT destTargetMsg MainDocument1
BIC_MT mappingName XML_Generic_ANSI_X12_to_DB_MT_OUT
BIC_MT saveSourceMsg source
Can some one tell me why there is an Error and what additional module configurations it requires .
Thank you,Hi,
If possible go to mapping in BIC designer Tool and execute the same by passing your payload there...
if you encounter any errors then there might be a problem with mapping developed...or can be payload..
Also check the parameter used for destSourceMsg source ...is that the source message which contains the payload ?
HTH
Rajesh
Maybe you are looking for
-
Anyone else having problems with iBooks, multiple copies of the same book have shown up downloaded in my bookshelf, iBook doesn't want to load jus spins and spins, HELP!
-
SSRS 2008 Matrix grouping help
Hi. I have a requirement to create an SSRS report with a tablix or matrix which looks like the image below. My dataset will hold the following column values: Project name, overall rag, cost rag, scope rag, headline and commentary. The RAG values are
-
Need to reset password for digital ID to sign doc in Adobe Reader on thinkpad using Windows
Hi, I need to reset (or find) my password for the self-signed digital ID I created in order to sign a doc in Adobe Reader using Adobe Echosign software. I'm currently on my laptop (thinkpad) which uses Windows. How do I do this? Thanks
-
Communication série - problème utilisation du port
Bonjour à tous, Je n'ai que peu d'expérience avec LabView et j'ai démarré un projet où je dois communiquer avec un instrument. Cet instrument est connecté par USB mais il s'agit d'un port COM virtuel. J'ai utilisé "Instrument I/O Assistant" pour crée
-
Refreshed laptop with Win 8.1 DVD - Freezing Problems
I had freezing problems on my Toshiba and decided to refresh it with full windows 8.1 DVD I purchased separately, Toshiba initially had Vista. I bought upgraded to Win 8 pro 64 and then to 8.1 pro 64 Toshiba didn't provide any restoration discs or an