Help to unload function
I have a video background wherefrom I load another swf through a build in pop up. I have a button in the loaded swf from where I need the popup to unload and go back to the video background. Im not very experienced in flash and haven't build this myself so im a little lost. underneath is first the code which is in my video background and then the code in my loaded swf. hope someone can help. The highlighted bits is the ones where i have attempted to have the loaded swf to unload
Video Background:
import VideoBg;
var videos:Array=new Array('videos/bird_short.f4v','videos/kanin.f4v');
var num:uint=1;
var vid:VideoBg=new VideoBg(videos[index]);
var index:int = videos[Math.floor(Math.random()*videos.length)];
addChild(vid);
setChildIndex(vid,0);
videobtn.buttonMode = true;
pictures.visible=true;
videobtn.addEventListener(MouseEvent.CLICK,toggleVideoF);
function toggleVideoF(e:MouseEvent):void{
index=(index+1)%videos.length;
vid.playF=videos[index];
videobtn.gotoAndStop(index+1);
stage.scaleMode=StageScaleMode.NO_SCALE;
stage.align=StageAlign.TOP_LEFT;
stage.addEventListener(Event.RESIZE, position);
stage.addEventListener(MouseEvent.CLICK, startIgen);
position(null);
function position(Event=null):void {
var SH=stage.stageHeight;
var SW=stage.stageWidth;
MinKnap.addEventListener(MouseEvent.CLICK, MinFunktion);
function MinFunktion(e:Event):void {
e.stopImmediatePropagation();
vid.ns.pause();
MinKnap.visible=false;
videobtn.visible=false;
popUp('start2.swf','swf',null,900,700,0);
pictures.addEventListener(MouseEvent.CLICK, picturesFunktion);
function picturesFunktion(e:Event):void {
e.stopImmediatePropagation();
vid.ns.pause();
MinKnap.visible=false;
videobtn.visible=false;
pictures.visible=false;
popUp('gallery_rabbit_picture.swf','swf',null,900,700,0);
function startIgen(Event):void {
MinKnap.visible=true;
videobtn.visible=true;
pictures.visible=true;
vid.ns.resume();
function popUp(con,typ,tit=null,wid=550,hei=400,alp=0.7):void {
ExternalInterface.call("Shadowbox.open",{content: con, player: typ, title: tit, width: wid, height: hei, options: {overlayOpacity:alp}});
function unloadFunction_rabit_gallery(event:Event):void {
popUp.unload();
MinKnap.visible=true;
videobtn.visible=true;
pictures.visible=true;
vid.ns.resume();
popUp.addEventListener("UnloadMe", unloadFunction_rabit_gallery);
Loaded swf:
back03_btn.addEventListener(MouseEvent.CLICK,back_rabit)
function back_rabit(event:MouseEvent):void
//MovieClip(parent.parent).gotoAndStop("frontpage2")
parent.dispatchEvent(new Event("UnloadMe", true));
i don't use shadowbox but it looks like you're using javascript to open that popup so you'll need to use javascript to close it. take a chance and try:
back03_btn.addEventListener(MouseEvent.CLICK,back_rabit)
function back_rabit(event:MouseEvent):void
ExternalInterface.call("Shadowbox.close");
Similar Messages
-
To upload a data into SAP Table with the help of RFC function in BODS
Hi,
Please provide me step-by-step solution to upload data into any SAP table with the help of RFC function in Data Services.
I have created RFC function that upload data into SAP table. RFC Function contains one table that has same structure as my database table.
In the data services how can i filled the table of RFC function, i am using this function in query transform of data services but it gives me error.
I am also follow link http://wiki.sdn.sap.com/wiki/display/BOBJ/BusinessObjectsDataServicesTipsand+Tricks
but it did not help me.
Thanks,
AbhishekHi Abhishek,
Did you import the function module in the SAP datastore first? When you open the SAP datastore, the function should be listed in the 'functions' section. If not, import it. Make sure your function is remote executable.
Once the function is there, you can use it in a transformation. In 'Schema Out' right-click on 'Query' (top level) and choose 'New Function Call'. You can then select a datastore and a function in the datastore. The wizard will show you which output parameters are available. I believe you have to add at least one and can select as many as you like.
After confirming your selection the function and the output parameters appear in Schema Out. You can then right-click on the function and choose 'Modify function call'. A popup will appear where you can specify the input parameters.
I hope this helps.
Jan. -
Hi...I was wondering if I could get help with this function. How do i write a function to return hours between a begin date and an end date for an employee. Thanks so much
EdStevens wrote:
AlexeyDev wrote:
sb92075 wrote:
select (date2-date1)*24 from dual;not as above but as below
select (date2-date1)/24 from dual;date2-date1 is amount of days. Divide it by 24 and what? if you multiply it on 24 you will have a chance to know how many hours between these two dates. :-)Don't forget that a DATE type also includes a time component.I suppose it doesn't matter if you did a difference between two dates. The result is always number of days. -
How to call a Search help in a function module?
Hi Experts,
I am a novice to ABAP, I am working on search helps. My requirement is to call a search help in a function module.
Can anyone please throw some light on this.
Any inputs will be helpful.
Thanks,
Amitayes you can do that..
in side the source code ..
write the select statement according to requirement and pass the internal table to below function moduel and return field to yor help field..
call the below fm inside the function module..
'POPUP_WITH_TABLE_DISPLAY' or 'REUSE_ALV_POPUP_TO_SELECT'
see the sample code...
FUNCTION Z_MFG_PLANTS_F4 .
"*"Local Interface:
" IMPORTING
" REFERENCE(W_WERKS) TYPE WERKS OPTIONAL
" IMPORTING
" REFERENCE(W_MATNR) TYPE MANTR OPTIONAL
Alv popup display
DATA : gc_selfield TYPE slis_selfield,
gt_fieldcat_drd TYPE slis_t_fieldcat_alv WITH HEADER LINE.
p_werks = W_WERKS.
data : begin of t_marc occurs 0,
werks type werks,
matnr type matnr,
end of t_marc
select matnr werks from marc into table t_marc where werks = p_werks.
IF t_disp[] IS NOT INITIAL.
gt_fieldcat_drd-seltext_m = 'Material'.
gt_fieldcat_drd-fieldname = 'MATNR'.
APPEND gt_fieldcat_drd.
CLEAR : gt_fieldcat_drd.
gt_fieldcat_drd-seltext_m = 'WERKS'.
gt_fieldcat_drd-fieldname = ''WERKS'.
APPEND gt_fieldcat_drd.
CLEAR : gt_fieldcat_drd.
Allow the user to select the required plant
CALL FUNCTION 'REUSE_ALV_POPUP_TO_SELECT'
EXPORTING
i_title = 'Material Selection for Plant'
i_selection = 'X'
i_screen_start_column = 5
i_screen_start_line = 5
i_screen_end_column = 70
i_screen_end_line = 20
i_tabname = 'T_MARC'
it_fieldcat = gt_fieldcat_drd[]
IMPORTING
es_selfield = gc_selfield
TABLES
t_outtab = t_MARC
EXCEPTIONS
program_error = 1
OTHERS = 2.
IF sy-subrc 0.
ENDIF.
READ TABLE t_MARC INDEX gc_selfield-tabindex.
IF sy-subrc = 0.
w_matnr = t_matnr-matnr.
ENDIF.
ENDIF.
ENDFUNCTION.
rgrds,
Shweta -
Requried Help in creating function
Hi All,
i need one help in creating function my input parameters for that function will be 1 or 1,2 or 1,2,3
my output should be
If i pass as 1 as input parameter it should return 1
If i pass 1,2 as input parameter it should return 1,2 in different rows
Similarly If i pass 1,2,3 as input parameter it should return 1,2,3 in different rows.
Can any one please help me in creating this function.
Thanks in Advance.
Edited by: p78 on Jan 16, 2012 3:31 AM
Edited by: p78 on Jan 16, 2012 3:31 AMHi,
that will be something like this. First you need a type for returning the rows (use other datatype for example number if you need so):
CREATE OR REPLACE TYPE t_list AS TABLE OF VARCHAR2 (4000);
/Then the function will be a pipelined function:
CREATE OR REPLACE FUNCTION in_list (p_list IN VARCHAR2)
RETURN t_list PIPELINED
AS
l_text VARCHAR2(32767) := p_list || ',';
l_idx NUMBER;
BEGIN
LOOP
l_idx := INSTR(l_text, ',');
EXIT WHEN NVL(l_idx, 0) = 0;
PIPE ROW (TRIM(SUBSTR(l_text, 1, l_idx - 1)));
l_text := SUBSTR(l_text, l_idx + 1);
END LOOP;
RETURN;
END;
/now you can query (or whatever the needs are):
select * from table(in_list('aa','bb'));Herald ten Dam
http://htendam.wordpress.com -
Java.lang.Error: IP Helper Library GetIfTable function failed
Some of our users are sometimes getting the following exception:
java.lang.Error: IP Helper Library GetIfTable function failed
java.net.NetworkInterface.getAll(Native Method)
java.net.NetworkInterface.getNetworkInterfaces(Unknown Source)
Does anyone know why this happens and what can be done against it?
Is this a bug?The operating system is Windows XP, Java is version 1.6.0_03 Sun Microsystems Inc.
Today, I got another error report containing this error. They all seem to come from the same user. Given that the user is still using our product, I guess it doesn't happen every time. :) The error actually happens in a third party library that uses JNI, so it could also be possible that this library messes up something. Given that the error happens rather rarely and we haven't got much data, I guess it isn't worth investigating this further at the moment. -
Download helper ceased to function on youtube today 8/8/2014
The add on download helper ceased to function on you tube - was working ok then stopped coloured icon became greyed out.
As recommended:
Uploaded and reinstalled Download Helper.
Uploaded and reinstalled updated Flash Player
Restarted computer and
still not working -
Help with unloading images AS3
Please can anyone help me. I am new to Action Script and flash and am having a nightmare unloading images. The code below works but I keep getting the following error messages:
TypeError: Error #2007: Parameter child must be non-null.
at flash.display::DisplayObjectContainer/removeChild()
at index_fla::MainTimeline/clickSection()
ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller.
at flash.display::DisplayObjectContainer/removeChild()
at index_fla::MainTimeline/clickSection()
Any help with this would be much appreciated.
var ImgReq01:URLRequest=new URLRequest("images/home/01.jpg");
var ImgReq02:URLRequest=new URLRequest("images/home/02.jpg");
var ImgReq03:URLRequest=new URLRequest("images/home/03.jpg");
var ImgReq04:URLRequest=new URLRequest("images/home/04.jpg");
var ImgReq05:URLRequest=new URLRequest("images/home/05.jpg");
var imgList:Array=[ImgReq01,ImgReq02,ImgReq03,ImgReq04,ImgReq05];
var imgRandom = imgList[Math.floor(Math.random()* imgList.length)];
var imgLoader:Loader = new Loader();
imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
imgLoader.load(imgRandom);
function onComplete(event:Event):void
var randomImage:Bitmap = Bitmap(imgLoader.content);
randomImage.x=187.4;
randomImage.y=218.1;
addChild(randomImage);
//handle events for info buttons...
information. addEventListener (MouseEvent.CLICK, clickSection);
home. addEventListener (MouseEvent.CLICK, clickSection);
galleries. addEventListener (MouseEvent.CLICK, clickSection);
function clickSection (evtObj:MouseEvent) {
//Trace shows what's happening.. in the output window
trace ("The "+evtObj.target.name+" button was clicked")
//go to the section clicked on...
gotoAndStop (evtObj.target.name)
// this line is causing errors when navigating between the gallery and information buttons
var Image:Bitmap = Bitmap(imgLoader.content);
removeChild(Image);you really should be adding the loader to the displaylist, not the content.
try:
var ImgReq01:URLRequest=new URLRequest("images/home/01.jpg");
var ImgReq02:URLRequest=new URLRequest("images/home/02.jpg");
var ImgReq03:URLRequest=new URLRequest("images/home/03.jpg");
var ImgReq04:URLRequest=new URLRequest("images/home/04.jpg");
var ImgReq05:URLRequest=new URLRequest("images/home/05.jpg");
var imgList:Array=[ImgReq01,ImgReq02,ImgReq03,ImgReq04,ImgReq05];
var imgRandom = imgList[Math.floor(Math.random()* imgList.length)];
var imgLoader:Loader = new Loader();
imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
imgLoader.load(imgRandom);
function onComplete(event:Event):void
imgLoader.x=187.4;
imgLoader.y=218.1;
addChild(imgLoader);
//handle events for info buttons...
information. addEventListener (MouseEvent.CLICK, clickSection);
home. addEventListener (MouseEvent.CLICK, clickSection);
galleries. addEventListener (MouseEvent.CLICK, clickSection);
function clickSection (evtObj:MouseEvent) {
//Trace shows what's happening.. in the output window
trace ("The "+evtObj.target.name+" button was clicked")
//go to the section clicked on...
gotoAndStop (evtObj.target.name)
// this line is causing errors when navigating between the gallery and information buttons
if(this.contains(imgLoader){
removeChild(imgLoader); -
Please can anyone help me. I am new to Action Script and flash and am having a nightmare unloading images. The code below works but I keep getting the following error messages:
TypeError: Error #2007: Parameter child must be non-null.
at flash.display::DisplayObjectContainer/removeChild()
at index_fla::MainTimeline/clickSection()
ArgumentError: Error #2025: The supplied DisplayObject must be a child of the caller.
at flash.display::DisplayObjectContainer/removeChild()
at index_fla::MainTimeline/clickSection()
Any help with this would be much appreciated.
var ImgReq01:URLRequest=new URLRequest("images/home/01.jpg");
var ImgReq02:URLRequest=new URLRequest("images/home/02.jpg");
var ImgReq03:URLRequest=new URLRequest("images/home/03.jpg");
var ImgReq04:URLRequest=new URLRequest("images/home/04.jpg");
var ImgReq05:URLRequest=new URLRequest("images/home/05.jpg");
var imgList:Array=[ImgReq01,ImgReq02,ImgReq03,ImgReq04,ImgReq05];
var imgRandom = imgList[Math.floor(Math.random()* imgList.length)];
var imgLoader:Loader = new Loader();
imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
imgLoader.load(imgRandom);
function onComplete(event:Event):void
var randomImage:Bitmap = Bitmap(imgLoader.content);
randomImage.x=187.4;
randomImage.y=218.1;
addChild(randomImage);
//handle events for info buttons...
information. addEventListener (MouseEvent.CLICK, clickSection);
home. addEventListener (MouseEvent.CLICK, clickSection);
galleries. addEventListener (MouseEvent.CLICK, clickSection);
function clickSection (evtObj:MouseEvent) {
//Trace shows what's happening.. in the output window
trace ("The "+evtObj.target.name+" button was clicked")
//go to the section clicked on...
gotoAndStop (evtObj.target.name)
// this line is causing errors when navigating between the gallery and information buttons
var Image:Bitmap = Bitmap(imgLoader.content);
removeChild(Image);you really should be adding the loader to the displaylist, not the content.
try:
var ImgReq01:URLRequest=new URLRequest("images/home/01.jpg");
var ImgReq02:URLRequest=new URLRequest("images/home/02.jpg");
var ImgReq03:URLRequest=new URLRequest("images/home/03.jpg");
var ImgReq04:URLRequest=new URLRequest("images/home/04.jpg");
var ImgReq05:URLRequest=new URLRequest("images/home/05.jpg");
var imgList:Array=[ImgReq01,ImgReq02,ImgReq03,ImgReq04,ImgReq05];
var imgRandom = imgList[Math.floor(Math.random()* imgList.length)];
var imgLoader:Loader = new Loader();
imgLoader.contentLoaderInfo.addEventListener(Event.COMPLETE, onComplete);
imgLoader.load(imgRandom);
function onComplete(event:Event):void
imgLoader.x=187.4;
imgLoader.y=218.1;
addChild(imgLoader);
//handle events for info buttons...
information. addEventListener (MouseEvent.CLICK, clickSection);
home. addEventListener (MouseEvent.CLICK, clickSection);
galleries. addEventListener (MouseEvent.CLICK, clickSection);
function clickSection (evtObj:MouseEvent) {
//Trace shows what's happening.. in the output window
trace ("The "+evtObj.target.name+" button was clicked")
//go to the section clicked on...
gotoAndStop (evtObj.target.name)
// this line is causing errors when navigating between the gallery and information buttons
if(this.contains(imgLoader){
removeChild(imgLoader); -
Component Unload Function?
I'm trying to develop my first component and I'm running into
a small problem. We're developing a large eLearning course and we
are using "text bubbles" to highlight certain elements in the
course. I figured why animate these bubbles every time? Why
couldn't I just build a component that allows me to enter in the
text and have it animate for me?
This component is basiclly placing a text bubble on the main
timeline and controlling it's actions. I'm using the Zigo tween
engine to scale the text bubble instance when the component loads
on a given frame. My problem is that I also want the text bubble to
animate closing when it hits the last keyframe of the component.
I have the function below in my .as file that I'm calling
when the component loads... is there any way I can trigger another
function when the component unloads while keeping all the script in
the .as file?
Any help would be greatly appreciated.
Thank you,
BryanUse delete statement for destroys the function.
function LoadButtons() {
buttonsArray = new Array();
for (i=1; i<16; i++) {
duplicateMovieClip(buttons, "button"+i, i);
buttonsArray
= _root["button"+i];
// Button Position
buttonsArray._x = -30+i*42;
buttonsArray
._y = 400;
buttonsArray.ButtonNumber = i;
delete LoadButtons;
For buttons you can use the removeMovieClip() method.
buttonInstanceName.removeMovieClip();
Erick Souza
www.ericksouza.com -
Help on Decode function in Toplink
Hi,
I have a sql statement like this:
select field1, field2 from table1 where upper(field1) like 'ADELPHI%'
order by field1,
DECODE(TO_CHAR(NVL(LENGTH(TRANSLATE(field1,'A1234567890','A')),0)),'0',LPAD(field1 ,50),field1)
How would I converted this to toplink query?
I appreciate any help you guys can extend to me.I just spent about a half hour writing a response here, and the damned forum timed out on me. #$^!@$#!^!@$%.
Here is the summary:
- Using TL Expressions and EJBQL are to allow Java developers who don't necessarily know SQL to write queries and to facilitate portability/maintainability of the apps. For REALLY gnarly queries, using TL Expressions or EJBQL won't buy you this. I.e., SQL is more expressive and easier for this kind of quer, so it's not easier to use, and frankly with the code needed to support it, it won't be easier to maintain or port... Bottom line, maybe SQL is the best option here?
- If you want to experiment, search for TO_CHAR on this forum, and the decode function in the javadoc. You need to build the expressions in pieces and you can treat expressions as arguments to other expressions -- in other words, you can build an expression like builder.leftPad(50, builder.get("field1")) and use it as one of the key/values in the hashtable to the decode function (in theory).
- Don -
Help with Query function on EAI Siebel Adapter
Can anyone help?
I have a workflow that uses the Query method on EAI Siebel Adapter to search for a Contact in Siebel. The Root component is Contact and the Child component is Address.
When I pass in a message that contains Contact data (i.e. LastName='Jones') and Address data (City='Perth') to query on, it returns all Contacts that match the Contact data, and for each of those Contacts if the address data matches it also returns the address.
What I want it to do is only return those Contacts that match both the Contact data 'AND' the address data, not all of the Contacts that match the contact data.
I hope this makes sense.
I've also tried using the searchspec function too, but this does not do what I want it to do either.
Hope you can help.
Thanks,
Carl
Can aHi,
can you create a MVG in Contact which will refer to Business Address & then try to use searchspec argument. I hope it will work for you. -
Need help with Math functions for text-based calculator!!!
I have the calculator working but I am having trouble figuring out thow to do a square root function, nth factorial, absolute value, and Fibonacci. Basically i got the easy part done. Also I am using the case to do the funtions but I am not sure if there are symbols on the keyboard that are commonly used for these funtions so i just made some up. I am new to java and this is only my second assignment so any help would be appreciated. Thanks
import java.util.*;
import java.math.*;
public class calculator
static Scanner console=new Scanner(System.in);
public static void main(String[]args)
double num1=0,num2=0;
double result=0;
char expression;
char operation;
String Soperation;
System.out.println("Enter ? for help or enter the operation in which to be processed");
Soperation=console.next();
operation = Soperation.charAt(0);
switch(operation)
case '+':
System.out.println("Please the first number");
num1=console.nextInt();
System.out.println("Please enter the second number");
num2=console.nextInt();
result=num1+num2;
break;
case'-':
System.out.println("Please the first number");
num1=console.nextInt();
System.out.println("Please enter the second number");
num2=console.nextInt();
result=num1-num2;
break;
case'*':
System.out.println("Please the first number");
num1=console.nextInt();
System.out.println("Please enter the second number");
num2=console.nextInt();
result=num1*num2;
break;
case'/':
System.out.println("Please the first number");
num1=console.nextInt();
System.out.println("Please enter the second number");
num2=console.nextInt();
if(num2==0)
System.out.println("Cannot Divide by Zero");
result=num1/num2;
break;
//square root
case'^':
System.out.println("Please enter a number");
break;
//fibonacci
case'#':
System.out.println("Please enter the position of the Fibonacci number");
break;
//factorial
case'!':
System.out.println("Please enter the number for factoring");
break;
//absolute value
case'&':
System.out.println("Please enter a number");
num1=console.nextInt();
result=num1;
break;
// help funtion
case'?':
System.out.println("Type + for addition, - for subtraction");
System.out.println("* for multipliction, / for division,^ for the square root");
System.out.println(" & for absolute value, # for fibonacci,and ! for factorial");
break;
System.out.println("The result is:"+result);
}rmabrey wrote:
I have the calculator working but I am having trouble figuring out thow to do a square root function, nth factorial, absolute value, and Fibonacci. java.lang.Math.sqrt()
nothing for factorial - write your own.
java.lang.Math.abs()
nothing for Fibonacci - write your own.
% -
Compatability Issue: Need Help Disabling Additional Functions - URGENT!
I am experiencing a problem with running Pro Tools 8.0.4 LE on my HP Pavilion dv7, which is encountered as a DAE error -6006 when loading Pro Tools. Research indicates that this error relates somehow to the firewire connection, and I am able to use Pro Tools on this system with a different interface (one that only has two microphone inputs) that allows me to connect via USB.
Also, when I do run Pro Tools via USB it seems that I can't use the Quick Punch feature without a minimum 10 second (usually a lot longer) delayed response after pressing the playback or record button!
I have been emailing Pro Tools support back and forth daily for 10 days now, and in the most recent email, they have said:
"This might be an incompatibility issue. HP Pavilion dv7 laptop is not tested by our US headquarter testing team
and not officially supported.
As you have found by yourself, each PC manufacture pre- installs their own features (as TV tuner) and the program into
Windows OS , the motherboard and BIOS. They work differently to Pro Tools and sometimes conflict. That is why we cannot support those PCs we have not tested.
Please turn off all the additional function by HP from BIOS. Please ask HP support how to do."
Therefore, I am requesting assistance with disabling all unnecessary services and processes on my HP laptop. I am assuming that the TV tuner is not a necessary service, but I have no idea about most of the others, and obviously I don't want to disable something that is necessary.
If you could help me ASAP I would really appreciate it, as I need to get on with recording urgently! Thank you.
This question was solved.
View Solution.UPDATE:
I have also been advised by Pro Tools support that if I add a supported FireWire card with Texas Instrument FireWire chip onto my computer, it may solve the problem. When I asked them how to go about doing this, they responded:
"If your PC has Express Card slot,
http://avid.custkb.com/avid/app/selfservice/search.jsp?DocId=352647
SIIG FireWire 2-Port ExpressCard
is tested and supported FireWire card.
Please ask HP about the spec of your computer." -
Help in IDOC_INPUT_ORDERS Function module
Hi,
I am writing a program to generate an IDOC using IDOC_INPUT_ORDERS Function module .
But I am a little confused as to what has to be passed as input_method,mass_processing which are the import parameters of this function-module .
If anyone has a sample code program using function module IDOC_INPUT_ORDERS , please could you share it with me .
Regards,
Sushanth H.S.Hi Sushanth,
IDOC_INPUT_ORDERS is a posting program.
This program uploads the idic to the database table.
Thatis it converts the idoc format to the SAP format.
I have created a sample posting program.
Please go through it.
*& Report Z_FI_UTIL_EXCEL2GL_POSTING *
REPORT Z_FI_UTIL_EXCEL2GL_POSTING.
include <icon>.
*/ =================================================================== *
CONSTANTS: on VALUE 'X',
off VALUE ' ',
tabx TYPE X VALUE '09',
c_e1bpache08 TYPE edilsegtyp VALUE 'E1BPACHE08',
c_e1bpacgl08 TYPE edilsegtyp VALUE 'E1BPACGL08',
c_e1bpaccr08 TYPE edilsegtyp VALUE 'E1BPACCR08'.
TYPES: BEGIN OF t_tab_index,
from TYPE i,
to TYPE i,
END OF t_tab_index.
data : tab type c.
DATA:
e1bpache08 LIKE e1bpache08,
e1bpacgl08 LIKE e1bpacgl08,
e1bpaccr08 LIKE e1bpaccr08.
DATA: g_subrc TYPE subrc.
DATA: g_file TYPE string.
DATA: g_segname TYPE edilsegtyp.
DATA: g_sdata TYPE edi_sdata.
DATA: g_first_doc.
DATA: i_dataf TYPE char2000 OCCURS 900 WITH HEADER LINE,
i_dataf_doc TYPE char2000 OCCURS 50 WITH HEADER LINE.
DATA: g_tab_index TYPE t_tab_index OCCURS 100 WITH HEADER LINE.
DATA: i_accountgl TYPE bapiacgl08 OCCURS 100 WITH HEADER LINE,
i_curramnt TYPE bapiaccr08 OCCURS 100 WITH HEADER LINE,
i_return TYPE bapiret2 OCCURS 10 WITH HEADER LINE,
g_docheader TYPE bapiache08.
*/ ======================== SELECTION ================================ *
SELECTION-SCREEN BEGIN OF BLOCK b1 WITH FRAME TITLE text-010.
PARAMETERS: excelf TYPE file_name LOWER CASE
DEFAULT 'C:\my_excel_file.txt'.
SELECTION-SCREEN END OF BLOCK b1.
*/ =========================== CORE ================================== *
START-OF-SELECTION.
*/ Call text File with GUI_UPLOAD
g_file = excelf.
CALL FUNCTION 'GUI_UPLOAD'
EXPORTING
filename = g_file
FILETYPE = 'ASC'
HAS_FIELD_SEPARATOR = ' '
HEADER_LENGTH = 0
READ_BY_LINE = 'X'
IMPORTING
FILELENGTH =
HEADER =
TABLES
data_tab = i_dataf
EXCEPTIONS
file_open_error = 1
file_read_error = 2
no_batch = 3
gui_refuse_filetransfer = 4
invalid_type = 5
no_authority = 6
unknown_error = 7
bad_data_format = 8
header_not_allowed = 9
separator_not_allowed = 10
header_too_long = 11
unknown_dp_error = 12
access_denied = 13
dp_out_of_memory = 14
disk_full = 15
dp_timeout = 16
OTHERS = 17
IF sy-subrc <> 0.
write: / Text-032.
stop.
ENDIF.
*/ Initialisation
write tabx to tab. " required as of ABAP 610 split cannot
*/ have mixed char and byte types
CLEAR g_tab_index.
REFRESH g_tab_index.
*/ how to process several doc : detecting docs in i_dataf
g_first_doc = on.
LOOP AT i_dataf.
CLEAR: g_segname, g_sdata.
SPLIT i_dataf AT tab INTO g_segname g_sdata.
CHECK: g_segname = c_e1bpache08,
sy-tabix > 1.
*/ 1st document
IF g_first_doc = on.
g_tab_index-from = 1.
g_tab_index-to = sy-tabix - 1.
APPEND g_tab_index.
*/ Next Documents
ELSE.
g_tab_index-from = g_tab_index-to + 1.
g_tab_index-to = sy-tabix - 1.
APPEND g_tab_index.
ENDIF.
g_first_doc = off.
ENDLOOP.
*/ Last doc.
g_tab_index-from = g_tab_index-to + 1.
g_tab_index-to = sy-tfill.
APPEND g_tab_index.
*/ Process documents.
loop at g_tab_index.
clear i_dataf_doc.
refresh i_dataf_doc.
append lines of i_dataf from g_tab_index-from
to g_tab_index-to
to i_dataf_doc.
perform process_document.
endloop.
END-OF-SELECTION.
*/ =========================== ROUTINES ============================== *
FORM process_document *
FORM process_document.
*/ Clearing Memory
CLEAR: g_docheader, i_accountgl, i_curramnt, i_return, g_subrc.
REFRESH: i_accountgl, i_curramnt, i_return.
*/ Checking i_dataf_doc
*/ Mapping dataf => Bapi structures & internal tables
CLEAR g_subrc.
CATCH SYSTEM-EXCEPTIONS conversion_errors = 1.
LOOP AT i_dataf_doc.
CLEAR g_sdata.
SPLIT i_dataf_doc AT tab INTO g_segname g_sdata.
CASE g_segname.
*/ HEADER
WHEN c_e1bpache08.
PERFORM do_split_ache08.
MOVE-CORRESPONDING e1bpache08 TO g_docheader.
IF e1bpache08-doc_date IS INITIAL.
CLEAR g_docheader-doc_date.
ENDIF.
IF e1bpache08-pstng_date IS INITIAL.
CLEAR g_docheader-pstng_date.
ENDIF.
IF e1bpache08-trans_date IS INITIAL.
CLEAR g_docheader-trans_date.
ENDIF.
*/ Account GL
WHEN c_e1bpacgl08.
PERFORM do_split_acgl08.
MOVE-CORRESPONDING e1bpacgl08 TO i_accountgl.
IF e1bpacgl08-pstng_date IS INITIAL.
CLEAR i_accountgl-pstng_date.
ENDIF.
APPEND i_accountgl.
*/ Account Currency & Amounts
WHEN c_e1bpaccr08.
PERFORM do_split_accr08.
MOVE-CORRESPONDING e1bpaccr08 TO i_curramnt.
APPEND i_curramnt.
*/ kick the line if segment name not filled
WHEN space.
*/ Other names => Bad file structure !
WHEN OTHERS.
g_subrc = 2.
ENDCASE.
ENDLOOP. " i_dataf_doc
ENDCATCH.
*/ erreur d'affectation
IF sy-subrc = 1 OR
NOT g_subrc IS INITIAL.
perform message_output using on.
exit.
ENDIF.
*/ Calling the BAPI
CALL FUNCTION 'BAPI_ACC_GL_POSTING_POST'
EXPORTING
documentheader = g_docheader
IMPORTING
OBJ_TYPE =
OBJ_KEY =
OBJ_SYS =
TABLES
accountgl = i_accountgl
currencyamount = i_curramnt
return = i_return
EXTENSION1 =
LOOP AT i_return WHERE type CA 'AE'.
g_subrc = 1.
EXIT.
ENDLOOP.
IF NOT g_subrc IS INITIAL.
perform message_output using on.
ELSE.
CALL FUNCTION 'BAPI_TRANSACTION_COMMIT'
EXPORTING
WAIT =
IMPORTING
RETURN =
perform message_output using off.
ENDIF.
ENDFORM.
*& Form do_split_ACHE08
text
--> p1 text
<-- p2 text
FORM do_split_ache08.
CLEAR e1bpache08.
SPLIT g_sdata AT tab INTO
e1bpache08-obj_type
e1bpache08-obj_key
e1bpache08-obj_sys
e1bpache08-username
e1bpache08-header_txt
e1bpache08-obj_key_r
e1bpache08-comp_code
e1bpache08-ac_doc_no
e1bpache08-fisc_year
e1bpache08-doc_date
e1bpache08-pstng_date
e1bpache08-trans_date
e1bpache08-fis_period
e1bpache08-doc_type
e1bpache08-ref_doc_no
e1bpache08-compo_acc
e1bpache08-reason_rev
ENDFORM. " do_split_ACHE08
*& Form do_split_ACGL08
text
--> p1 text
<-- p2 text
FORM do_split_acgl08.
CLEAR e1bpacgl08.
SPLIT g_sdata AT tab INTO
e1bpacgl08-itemno_acc
e1bpacgl08-gl_account
e1bpacgl08-comp_code
e1bpacgl08-pstng_date
e1bpacgl08-doc_type
e1bpacgl08-ac_doc_no
e1bpacgl08-fisc_year
e1bpacgl08-fis_period
e1bpacgl08-stat_con
e1bpacgl08-ref_key_1
e1bpacgl08-ref_key_2
e1bpacgl08-ref_key_3
e1bpacgl08-customer
e1bpacgl08-vendor_no
e1bpacgl08-alloc_nmbr
e1bpacgl08-item_text
e1bpacgl08-bus_area
e1bpacgl08-costcenter
e1bpacgl08-acttype
e1bpacgl08-orderid
e1bpacgl08-orig_group
e1bpacgl08-cost_obj
e1bpacgl08-profit_ctr
e1bpacgl08-part_prctr
e1bpacgl08-wbs_element
e1bpacgl08-network
e1bpacgl08-routing_no
e1bpacgl08-order_itno
ENDFORM. " do_split_ACGL08
*& Form do_split_ACCR08
text
--> p1 text
<-- p2 text
FORM do_split_accr08.
data: l_filler(100).
CLEAR e1bpaccr08.
SPLIT g_sdata AT tab INTO
e1bpaccr08-itemno_acc
e1bpaccr08-curr_type
e1bpaccr08-currency
e1bpaccr08-currency_iso
e1bpaccr08-amt_doccur
e1bpaccr08-exch_rate
e1bpaccr08-exch_rate_v
l_filler
ENDFORM. " do_split_ACCR08
*& Form message_output
text
--> p1 text
<-- p2 text
FORM message_output using if_error.
data: l_message(200),
l_return type i.
format color 1.
skip.
write: / text-020, g_tab_index-from,
text-021, g_tab_index-to.
skip.
if if_error = on.
write: / icon_red_light as icon, text-030 color 6.
else.
write: / icon_green_light as icon, text-031 color 5.
endif.
describe table i_return lines l_return.
if l_return is initial.
write: / text-032.
endif.
loop at i_return.
CALL FUNCTION 'FORMAT_MESSAGE'
EXPORTING
ID = i_return-id
LANG = sy-langu
NO = i_return-number
V1 = i_return-MESSAGE_V1
V2 = i_return-MESSAGE_V2
V3 = i_return-MESSAGE_V3
V4 = i_return-MESSAGE_V4
IMPORTING
MSG = l_message
EXCEPTIONS
NOT_FOUND = 1
OTHERS = 2
check sy-subrc = 0.
write: / l_message.
endloop.
ENDFORM. " message_output
Tell me ur mailid. I will sen u more.
<b>Please reward if helpful.</b>
Maybe you are looking for
-
Dear sap Guru, I want to create a service tax report and i am taking these table for creating this report -BKPF, RSEG,BSET, RBKP,LFA1 AND 1IMOVEND . can anybody tellme how to interlink these tables. Thanks in advance Manas
-
When will that stupid adobe flash be removed from mozilla?
I am tired of that thing crashing on me all the time. Can anyone give some info as to when to expect a html player or anything else to take the place of that stupid flash. I´m angry as a ****.
-
I wish to write a text file that is tab separated for viewing in UNIX, however the tab character provided in Labview is read as a ^M in the UNIX file and in notepad. If you have any suggestions, they would be appreciate
-
Photoshop CS3 - HELP!!!!!
Hello, a few weeks ago I had the bad idea to download Yosemite. Since then only problems so I formatted the MacPro purchased in 2010 and when reinstalling Photoshop CS3, I do not read the installation disc. How do I install it? Even from the download
-
I'm trying to update my IPAD 2 to iOS 7.1.2 but don't have enough memory to do so. In I-Tunes I'm told to change my media sync options to gain more memory, but I don't know how. Can you help?