OAF Button Handling
Hello All,
Having some trouble bringing back a button on a closed Notification.
We go to a Digital Signature Page from the Initial PO Approval Notification OAF Page.
Rendered buttons with OAWebBean:
OAWebBean rootwb2 = oapagecontext.getRootWebBean();
OAWebBean wb2 = rootwb2.findChildRecursive (uiNodeName);
if (wb2 != null){
wb2.setRendered(digSigButtonDisplay);
When we return from the Digital Signature page wb2is null and we cannot render the buttons.
Does this have something to do with the Notification being in closed state??
Thanks for any help,
Bradley
Try the OA Framework forum:
http://forums.oracle.com/forums/index.jspa?categoryID=84
Similar Messages
-
RE: [iPlanet-JATO] image button handling
Hi Todd,
from what I have seen so far on the Project they are just buttons on
the page.
In the interim, I modified RequestHandlingViewBase.acceptsRequest() to
handle the matching of parameter and command child names.
from
if (request.getParameter(commands)!=null)
return getCommandChildNames()[i];
to
if (request.getParameter(commands[i])!=null ||
(request.getParameter(commands[i]+ ".x")!=null ))
return getCommandChildNames()[i];
This fixed the problem with the image buttons in our cases.
Kostas
-----Original Message-----
From: Todd Fast
Sent: 10/27/00 6:21 AM
Subject: Re: [iPlanet-JATO] image button handling
Hi Kostas--
I wanted to get some feedback on the known issue of the
handleXXXXRequest method not being fired for buttons which have
images, due to the the browser submitting
the pixel coordinates back to the server like this:
Page1.ImageButton1.x=...
Page1.ImageButton1.y=...
As the ND conversion project we are currently working on heavily uses
image buttons we would like to get and indication if and when a patch
is planned for this.
Our current work around is to remove the src attribute from the JATO
tags in the JSPs.We are currently working on getting this fixed. One question--what is
the
relative type of usage of image buttons in your project? Are they just
buttons on the page (view bean), or do they appear in tiled views as
well?
Todd
[email protected]
[Non-text portions of this message have been removed]OK, here's what I'm trying to do: We have, like you said, a menu
page. The pages that it goes to and the number of links are all
variable and read from the database. In NetD we were able to create
URLs in the form
pgXYZ?SPIDERSESSION=abcd
so this is what I'm trying to replicate here. So the URL that works
is
pgContactUs?GXHC_GX_jst=fc7b7e61662d6164&GXHC_gx_session_id_=cc9c6dfa5
601afa7
which I interpreted to be the equivalent of the old Netd way. Our
javascript also loads other frames of the page in the same manner.
And I believe the URL-rewritten frame sources of a frameset look like
this too.
This all worked except for the timeout problem. In theory we could
rewrite all URLs to go to a handler, but that would be...
inconvenient. -
i want to know about Default Button Handling.
Default Button means "Auto Focused Submit Button when i click page and press enter key ".
i want to know how can i set some submit button to Default Submit Button.
Message was edited by:
Redsky21
Message was edited by:
Redsky21The description is still quite not understandable. Please put it in more detail with a sample scenario if possible.
--Shiv -
Random numbers, whithin a button handler class
For my last project I need to create a program that opens a window with 10 text boxes, all displaying "0" at first and a button labled New Numbers. When this button is pushed it needs to generate random numbers within all of the text fields. I have been able to create one that has the text boxes and the button, but in the button handler class the random numbers will not generate properly.I figured that if I could get the button handler class to at least change just the first text field then I would be able to get the rest, but I can't even seem to get that far. Below is what I have so far, any help or guidence would really be appreciated.. Thanks
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
public class Program6
public static void main(String [] args)
MyFrame frame = new MyFrame("Alan Jackson - Program 6");
frame.pack();
frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
frame.setVisible(true);
class MyFrame extends JFrame
JTextField [] txt = new JTextField[10];
JButton btnNewNumbers;
public MyFrame(String S)
super(S);
setLayout(new FlowLayout());
btnNewNumbers = new JButton("New Numbers");
int i = 0;
while(i<10)
txt[i] = new JTextField("0",12);
add(txt);
i++;
add (btnNewNumbers);
btnNewNumbers.addActionListener(new ButtonHandler());
class ButtonHandler implements ActionListener
public void actionPerformed(ActionEvent random)
txt[0].setText((int) (Math.random() * 100 +1));Next time, please use CODE tags, to post your code.
class MyFrame extends JFrame{
JTextField [] txt = new JTextField[10];
JButton btnNewNumbers;
public MyFrame(String S){
super(S);
setLayout(new FlowLayout());
btnNewNumbers = new JButton("New Numbers");
int i=0;
while(i<10){
txt[i] = new JTextField("0",12); //<<<<< changed
add(txt);
i++;
add (btnNewNumbers);
btnNewNumbers.addActionListener(new ActionListener(){
public void actionPerformed(ActionEvent random){
for(int i = 0; i< 10; i++){
txt[i].setText(Integer.toString((int) (Math.random() * 100 +1))); -
I currently have a new button that seems okay (over behavior
shows correctly), but the .onRelease handler never hits a
breakpoint on the first statement. I tried the following experiment
on an old working button and I can't understand what I observed.
The working button is defined on the whole timeline, i.e., it
appears on frame 1 in a layer that has keyframes only on frame 1
and the last frame. The button handler is in Active Script on frame
1 in a separate actions layer. The script applies for the whole
timeline too. Now if I take frame 1 of the buttons layer and move
it to frame 5 so the button does not appear until frame 5, geez,
the button handler never runs. What is happening?
I tried the above experiment cuz the new button I can't get
to work does not appear at frame 1, even though its handler is in
that script that is on frame 1 (like the documentation tells you to
do - gather up all your code into a single program on frame 1 in an
actions layer.) However, making this new button start on frame 1
(by moving its starting frame back to 1) did not make it work.
Another property of my non-working button is that it is in a
layer folder. Moving this layer out of the folder made it work. Is
there some restriction that buttons can't be in a layer folder -
I'm using Action Script 2?If the button script is not on a keyframe in frame 5, it is
"not there".
Enter an empty keyframe in frame 5, put the button script on
that
keyframe. Now the button (in frame 5) should work, too, if
you did not
mess anything else up. :)
Just because the script from frame 1 is shown in the AS
window when you
click somewhere in the timeline after frame 1, does not mean
that it
works the way you think it should.
Christian Scholz-Flöter -
Linking Editing TextArea with Button Handler
Java newbie here,i am trying to create a program to display a keyboard on screen and display the the letter in a text area when the character letter is pressed. And the complete sentence when return is pressed.
I have the GUI up, the problem is the letters are dispayed in a JOptionPane and i want them to be written to the TextArea.
Any help would be appreaciated
Here is the code in full so far.
import java.awt.event.*;
import java.awt.*;
import javax.swing.*;
* Alphabet is a program that will display a text pad and 27 buttons of the 25
* Letters of the Alphabet and display them when pressed and display all buttons
* when Return button is pressed..
* version (V 0.1)
public class Alphabet extends JFrame
private JPanel buttonPanel ;
private JButton buttons[];
private JButton SpaceButton;
private JButton ReturnButton;
//setup GUI
public Alphabet()
super("Alphabet");
//get content pane
Container container = getContentPane();
//create button array
buttons = new JButton[122];
//intialize buttons
SpaceButton = new JButton ("Space");
ReturnButton = new JButton ("Return");
//setup panel and set its layout
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout (7,buttons.length));
//create text area
JTextArea TextArea = new JTextArea ();
TextArea.setEditable(false);
container.add(TextArea, BorderLayout.CENTER);
// set a nice titled border around the TextArea
TextArea.setBorder(
BorderFactory.createTitledBorder("Your Text is Displayed Here"));
//create and add buttons
for (int count = 96; count <buttons.length; count++ ) {
buttons[count] = new JButton( ""+ (char)(count +1 ));
buttonPanel.add(buttons [count]);
ButtonHandler handler = new ButtonHandler();
buttons[count].addActionListener(handler);
buttonPanel.add(SpaceButton);
buttonPanel.add(ReturnButton);
ReturnButton.setToolTipText( "Press to Display Sentence" );
container.add(buttonPanel, BorderLayout.SOUTH);
// set a nice titled border around the ButtonPanel
buttonPanel.setBorder(
BorderFactory.createTitledBorder("Click inside this Panel"));
// create an instance of inner class ButtonHandler
// to use for button event handling
ButtonHandler handler = new ButtonHandler();
ReturnButton.addActionListener(handler);
setSize (625,550);
setVisible(true);
}// end constructor Alphabet
public static void main (String args[])
Alphabet application = new Alphabet();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// inner class for button event handling
private class ButtonHandler implements ActionListener {
// handle button event
public void actionPerformed( ActionEvent event )
JOptionPane.showMessageDialog( Alphabet.this,
"You pressed: " + event.getActionCommand() );
}//END CLASS ALPHABETimport java.awt.event.*;
import java.awt.*;
import javax.swing.*;
public class Alphabet extends JFrame
private JPanel buttonPanel ;
private JButton buttons[];
private JButton SpaceButton;
private JButton ReturnButton;
JTextArea TextArea;
String str="";String stt="";
//setup GUI
public Alphabet()
super("Alphabet");
//get content pane
Container container = getContentPane();
//create button array
buttons = new JButton[122];
//intialize buttons
SpaceButton = new JButton ("Space");
ReturnButton = new JButton ("Return");
//setup panel and set its layout
buttonPanel = new JPanel();
buttonPanel.setLayout(new GridLayout (7,buttons.length));
//create text area
TextArea = new JTextArea ();
TextArea.setEditable(false);
container.add(TextArea, BorderLayout.CENTER);
// set a nice titled border around the TextArea
TextArea.setBorder(
BorderFactory.createTitledBorder("Your Text is Displayed Here"));
//create and add buttons
for (int count = 96; count <buttons.length; count++ ) {
buttons[count] = new JButton( ""+ (char)(count +1 ));
buttonPanel.add(buttons [count]);
ButtonHandler handler = new ButtonHandler();
buttons[count].addActionListener(handler);
buttonPanel.add(SpaceButton);
buttonPanel.add(ReturnButton);
ReturnButton.setToolTipText( "Press to Display Sentence" );
container.add(buttonPanel, BorderLayout.SOUTH);
// set a nice titled border around the ButtonPanel
buttonPanel.setBorder(
BorderFactory.createTitledBorder("Click inside this Panel"));
// create an instance of inner class ButtonHandler
// to use for button event handling
ButtonHandler handler = new ButtonHandler();
ReturnButton.addActionListener(handler);
SpaceButton.addActionListener(handler);
setSize (625,550);
setVisible(true);
}// end constructor Alphabet
public static void main (String args[])
Alphabet application = new Alphabet();
application.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
// inner class for button event handling
private class ButtonHandler implements ActionListener {
// handle button event
public void actionPerformed( ActionEvent event )
if((event.getActionCommand()).equals("Space")){
TextArea.setText(event.getActionCommand());
str+=" ";
//TextArea.append(" ");
else if((event.getActionCommand()).equals("Return")){
stt+=str;
stt+="\n";
str="";
TextArea.setText(stt);
//TextArea.append(str);
//TextArea.append("\n");
else {
TextArea.setText(event.getActionCommand());
str+=event.getActionCommand();
//TextArea.append(event.getActionCommand());
}//END CLASS ALPHABET
Ok? -
Hi gurus,
My ALV(reuse_alv) report has 4 buttons(custom buttons, like category wise view, plant wise view etc) created by me and iam using my own GUI status. Now when i view my report and navigate between the four buttons the functionality is not working properly. data is safe.
my problem is:
on the report after navigation btwn the buttons created by me,
the 3 buttons:
back - is going to the previous screen of alv
exit - is functioning same as back button
cancel - going to selection screen with the same selection screen values
*My functionality is: Back seems to be ok,
exit should be out of t/code (at the moment selection screen comes),
cancel (back to selection screen).*
so can u please suggest me what can i give in user_command to handle the above events
points will be rewarded.
urs, Chaitu
Edited by: chaitanya on Jun 23, 2008 12:10 PMHi,
If the caller wants to use a self-defined user interface (for example, in order to provide additional list functions or use existing functions), I recommend that you copy standard status STANDARD_FULLSCREEN from function group SLVC_FULLSCREEN and modify it accordingly. ALV standard function codes always start with '&'.
Add your Fcodes at the apllication toolbar it will come as button .
I am givng you a sample code of ALV which has a button on application toolbar which calls a smartform on press.
REPORT ZMSTR0022.
CONSTANTS: C_FORM_NAME TYPE TDSFNAME VALUE 'ZMST_PER_APPL'.
TABLES :ZMST_PERMIT.
TYPE-POOLS: SLIS.
TYPE-POOLS :VRM. "Value Request Manager
TYPES:BEGIN OF STRU_ZMST_PERMIT,
CHECKBOX(1) TYPE C, " Checkbox
ZPIDNUM TYPE ZMST_PERMIT-ZPIDNUM, " Permit ID No.
ZARBDSC TYPE ZMST_PERMIT-ZARBDSC, " Arabic description
ZENGDSC TYPE ZMST_PERMIT-ZENGDSC, " English description
ZENQUAN TYPE ZMST_PERMIT-ZENQUAN, " Qty in English
ZARQUAN TYPE ZMST_PERMIT-ZARQUAN, " Qty in Arabic
ZENUOM TYPE ZMST_PERMIT-ZENUOM, " UoM
ZTARIFF TYPE ZMST_PERMIT-ZTARIFF, " Tariff No
ZARRPRT TYPE ZMST_PERMIT-ZARRPRT, " Port code
ZPRT_NAME(60) TYPE C, " Port name in Arabic
ZPERNUM TYPE ZMST_PERMIT-ZPERNUM, " Reference No
ZEFFDT TYPE ZMST_PERMIT-ZEFFDT, " Valid from
ZEXPDT TYPE ZMST_PERMIT-ZEXPDT, " Valid to
ZARB_DT(15) TYPE C, " Arabic Date of letter
ZNAME_AUTH(50) TYPE C, " Name of Authority
ZPERM_MIN(50) TYPE C, " Permit Ministry
END OF STRU_ZMST_PERMIT.
TYPES:BEGIN OF STRU_PERMIT,
ZPIDNUM TYPE ZMST_PERMIT-ZPIDNUM, " Permit ID No.
ZENGDSC TYPE ZMST_PERMIT-ZENGDSC, " English description
ZARBDSC TYPE ZMST_PERMIT-ZARBDSC, " Arabic description
ZTARIFF TYPE ZMST_PERMIT-ZTARIFF, " Tariff No
ZPERNUM TYPE ZMST_PERMIT-ZPERNUM, " Reference No
ZARRPRT TYPE ZMST_PERMIT-ZARRPRT, " Port code
ZEFFDT TYPE ZMST_PERMIT-ZEFFDT, " Valid from
ZEXPDT TYPE ZMST_PERMIT-ZEXPDT, " Valid to
END OF STRU_PERMIT.
TYPES: BEGIN OF STRU_FORM_PERMIT,
ZARBDSC TYPE ZMST_PERMIT-ZARBDSC, " Arabic description
ZENGDSC TYPE ZMST_PERMIT-ZENGDSC, " English description
ZENQUAN TYPE ZMST_PERMIT-ZENQUAN, " Qty in English
ZARQUAN TYPE ZMST_PERMIT-ZARQUAN, " Qty in Arabic
ZENUOM TYPE ZMST_PERMIT-ZENUOM, " UoM
ZTARIFF TYPE ZMST_PERMIT-ZTARIFF, " Tariff No
ZPRT_NAME(60) TYPE C, " Port name in Arabic
END OF STRU_FORM_PERMIT.
DATA: IT_PERMIT TYPE TABLE OF STRU_PERMIT.
DATA: IT_ZMST_PERMIT TYPE TABLE OF STRU_ZMST_PERMIT,
WA_ZMST_PERMIT LIKE LINE OF IT_ZMST_PERMIT,
IT_FORM_PERMIT TYPE TABLE OF STRU_FORM_PERMIT,
WA_FORM_PERMIT LIKE LINE OF IT_FORM_PERMIT.
DATA: WA_LAYOUT TYPE SLIS_LAYOUT_ALV,
WA_FIELDCAT TYPE SLIS_FIELDCAT_ALV,
IT_FIELDCAT TYPE TABLE OF SLIS_FIELDCAT_ALV.
DATA: W_FORM TYPE RS38L_FNAM.
DATA: W_NAME_AUTH(50),
W_ZARBDT(15),
W_ZENGDT(10),
W_ZPRT_NAME(70).
DATA: W_PARAM TYPE SSFCTRLOP.
DATA:W_NAME1 TYPE DFIES-FIELDNAME,
W_NAME2 TYPE HELP_INFO-DYNPROFLD .
SELECTION-SCREEN BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-023.
SELECT-OPTIONS:S_PIDNUM FOR ZMST_PERMIT-ZPIDNUM ,
S_ENGDSC FOR ZMST_PERMIT-ZENGDSC NO INTERVALS LOWER CASE,
S_ARBDSC FOR ZMST_PERMIT-ZARBDSC NO INTERVALS LOWER CASE,
S_TARIFF FOR ZMST_PERMIT-ZTARIFF NO INTERVALS,
S_PERNUM FOR ZMST_PERMIT-ZPERNUM NO INTERVALS,
S_ARRPRT FOR ZMST_PERMIT-ZARRPRT NO INTERVALS MATCHCODE OBJECT ZMST_PORTS.
PARAMETER:P_PERTYP(2) TYPE C AS LISTBOX VISIBLE LENGTH 20.
SELECTION-SCREEN END OF BLOCK B1.
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-LOW.
W_NAME2 = 'S_PIDNUM-LOW'.
W_NAME1 = 'ZPIDNUM'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PIDNUM-HIGH.
W_NAME2 = 'S_PIDNUM-HIGH'.
W_NAME1 = 'ZPIDNUM'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ENGDSC-LOW.
W_NAME2 = 'S_ENGDSC'.
W_NAME1 = 'ZENGDSC'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_ARBDSC-LOW.
W_NAME2 = 'S_ARBDSC'.
W_NAME1 = 'ZARBDSC'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_TARIFF-LOW.
W_NAME2 = 'S_TARIFF'.
W_NAME1 = 'ZTARIFF'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN ON VALUE-REQUEST FOR S_PERNUM-LOW.
W_NAME2 = 'S_PERNUM'.
W_NAME1 = 'ZPERNUM'.
PERFORM F4_HELP USING W_NAME1 W_NAME2 . "calling subroutine to provide desired F4 help
AT SELECTION-SCREEN.
IF SY-UCOMM = 'ONLI'.
PERFORM CHECK_INPUT. "calling subroutine to check inputs on selection screen
ENDIF.
INITIALIZATION.
PERFORM VAL_PERTYP.
START-OF-SELECTION.
PERFORM FILL_FIELDCAT. "calling subroutine for filling fieldcatalog
If Permit ministry is blank then fetch data from ZMST_PERMIT otherwise from ZMST_PERMITHI--
IF P_PERTYP IS INITIAL.
PERFORM FETCH_PERMIT. "calling subroutine to fetch data from ZMST_PERMIT
ELSE.
PERFORM FETCH_PERMITHI. "calling subroutine to fetch data from ZMST_PERMITHI
ENDIF.
END-OF-SELECTION.
*& Form fill_fieldcat
text
--> p1 text
<-- p2 text
FORM FILL_FIELDCAT .
-passing the parameters of layout--
WA_LAYOUT-ZEBRA = 'X'.
WA_LAYOUT-COLWIDTH_OPTIMIZE = 'X'.
WA_LAYOUT-BOX_FIELDNAME = 'CHECKBOX'.
WA_LAYOUT-BOX_TABNAME = 'IT_ZMST_PERMIT'.
-Passing the parameters of fieldcatalog--
WA_FIELDCAT-FIELDNAME = 'ZPIDNUM'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-001.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZARBDSC'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-002.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-LOWERCASE = 'X'.
WA_FIELDCAT-OUTPUTLEN = 120.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZENGDSC'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-003.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-LOWERCASE = 'X'.
WA_FIELDCAT-OUTPUTLEN = 120.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZENQUAN'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-004.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZARQUAN'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-005.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZENUOM'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-006.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZTARIFF'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-007.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-OUTPUTLEN = 15.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZARB_DT'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_L = TEXT-013.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZNAME_AUTH'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-014.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-OUTPUTLEN = 50.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZPRT_NAME'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-009.
WA_FIELDCAT-EDIT = 'X'.
WA_FIELDCAT-OUTPUTLEN = 60.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZARRPRT'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-008.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZPERNUM'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-010.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZEFFDT'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-011.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZEXPDT'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-012.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
WA_FIELDCAT-FIELDNAME = 'ZPERM_MIN'.
WA_FIELDCAT-TABNAME = 'IT_ZMST_PERMIT'.
WA_FIELDCAT-SELTEXT_M = TEXT-019.
WA_FIELDCAT-OUTPUTLEN = 50.
WA_FIELDCAT-LOWERCASE = 'X'.
APPEND WA_FIELDCAT TO IT_FIELDCAT.
CLEAR WA_FIELDCAT.
ENDFORM. " fill_fieldcat
*& Form alv_disp
text
--> p1 text
<-- p2 text
FORM ALV_DISP .
CALL FUNCTION 'REUSE_ALV_GRID_DISPLAY'
EXPORTING
I_CALLBACK_PROGRAM = 'ZMSTR0022'
I_CALLBACK_PF_STATUS_SET = 'PF_STATUS'
I_CALLBACK_USER_COMMAND = 'USER_COMMAND'
I_GRID_TITLE = TEXT-015
IS_LAYOUT = WA_LAYOUT
IT_FIELDCAT = IT_FIELDCAT
I_SAVE = 'A'
TABLES
T_OUTTAB = IT_ZMST_PERMIT
EXCEPTIONS
PROGRAM_ERROR = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " alv_disp
*& Form PF_STATUS
text
This subroutine sets the GUI status
FORM PF_STATUS USING RT_EXTAB TYPE SLIS_T_EXTAB.
SET PF-STATUS 'ZSTANDARD_FULLSCREEN'.
ENDFORM. "PF_STATUS
*& Form USER_COMMAND
FORM USER_COMMAND USING R_UCOMM TYPE SY-UCOMM RS_SELFIELD TYPE SLIS_SELFIELD.
*For Printing Smartform
IF R_UCOMM = 'PRT'.
CLEAR WA_FORM_PERMIT.
REFRESH IT_FORM_PERMIT.
LOOP AT IT_ZMST_PERMIT INTO WA_ZMST_PERMIT WHERE CHECKBOX = 'X'.
MOVE-CORRESPONDING WA_ZMST_PERMIT TO WA_FORM_PERMIT.
APPEND WA_FORM_PERMIT TO IT_FORM_PERMIT .
*Check for First occurence of Name of authority
IF WA_ZMST_PERMIT-ZNAME_AUTH NE SPACE.
IF W_NAME_AUTH = ' '.
W_NAME_AUTH = WA_ZMST_PERMIT-ZNAME_AUTH.
ENDIF.
ENDIF.
*Check for First occurence of Arabic date
IF WA_ZMST_PERMIT-ZARB_DT NE SPACE.
IF W_ZARBDT = ' '.
W_ZARBDT = WA_ZMST_PERMIT-ZARB_DT.
ENDIF.
ENDIF.
IF WA_ZMST_PERMIT-ZPRT_NAME NE SPACE.
IF W_ZPRT_NAME = ' '.
MOVE WA_ZMST_PERMIT-ZPRT_NAME TO W_ZPRT_NAME.
CONDENSE W_ZPRT_NAME.
ENDIF.
ENDIF.
CLEAR : WA_FORM_PERMIT, WA_ZMST_PERMIT.
ENDLOOP.
CONCATENATE SY-DATUM0(4) '/' SY-DATUM4(2) '/' SY-DATUM+6(2) INTO W_ZENGDT.
*Printing Subroutine
IF NOT IT_FORM_PERMIT[] IS INITIAL.
PERFORM PRINT_FORM.
ELSE.
MESSAGE TEXT-018 TYPE 'I'.
ENDIF.
ENDIF.
ENDFORM. "user_command
*& Form F4_HELP
text
--> p1 text
<-- p2 text
FORM F4_HELP USING: W_VAR TYPE DFIES-FIELDNAME
W_VAR1 TYPE HELP_INFO-DYNPROFLD .
Fetching data from zmst_permit for F4 help on PERMIT ID No.--
IF IT_PERMIT[] IS INITIAL.
SELECT ZPIDNUM
ZENGDSC
ZARBDSC
ZTARIFF
ZPERNUM
ZARRPRT
ZEFFDT
ZEXPDT
FROM ZMST_PERMIT INTO CORRESPONDING FIELDS OF TABLE IT_PERMIT.
ENDIF.
CALL FUNCTION 'F4IF_INT_TABLE_VALUE_REQUEST'
EXPORTING
RETFIELD = W_NAME1 " 'ZPIDNUM'
DYNPPROG = 'ZMSTR0022'
DYNPNR = SY-DYNNR
DYNPROFIELD = W_NAME2 "'S_PIDNUM'
VALUE_ORG = 'S'
TABLES
VALUE_TAB = IT_PERMIT
EXCEPTIONS
PARAMETER_ERROR = 1
NO_VALUES_FOUND = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " F4_HELP
*& Form check_input
text
--> p1 text
<-- p2 text
FORM CHECK_INPUT .
IF S_PIDNUM[] IS INITIAL AND
S_ENGDSC[] IS INITIAL AND
S_ARBDSC[] IS INITIAL AND
S_TARIFF[] IS INITIAL AND
S_PERNUM[] IS INITIAL AND
S_ARRPRT[] IS INITIAL .
MESSAGE TEXT-016 TYPE 'E'.
LEAVE TO TRANSACTION 'ZMSTR022'.
ENDIF.
ENDFORM. " check_input
*& Form print_form
text
--> p1 text
<-- p2 text
FORM PRINT_FORM .
CALL FUNCTION 'SSF_FUNCTION_MODULE_NAME'
EXPORTING
FORMNAME = C_FORM_NAME
IMPORTING
FM_NAME = W_FORM
EXCEPTIONS
NO_FORM = 1
NO_FUNCTION_MODULE = 2
OTHERS = 3.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
W_PARAM-LANGU ='AR'.
CALL FUNCTION W_FORM
EXPORTING
CONTROL_PARAMETERS = W_PARAM
W_NAME_AUTH = W_NAME_AUTH
W_ZARBDT = W_ZARBDT
W_ZENGDT = W_ZENGDT
W_ZPRT_NAME = W_ZPRT_NAME
TABLES
IT_FORM_PERMIT = IT_FORM_PERMIT
EXCEPTIONS
FORMATTING_ERROR = 1
INTERNAL_ERROR = 2
SEND_ERROR = 3
USER_CANCELED = 4
OTHERS = 5.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " print_form
*& Form fetch_Permit
text
--> p1 text
<-- p2 text
FORM FETCH_PERMIT .
-Fetching data from zmst_permit based on the inputs on selection screen--
SELECT
ZPIDNUM
ZARBDSC
ZENGDSC
ZENQUAN
ZARQUAN
ZENUOM
ZTARIFF
ZARRPRT
ZPERNUM
ZEFFDT
ZEXPDT
FROM ZMST_PERMIT INTO CORRESPONDING FIELDS OF TABLE IT_ZMST_PERMIT
WHERE ZPIDNUM IN S_PIDNUM
AND ZENGDSC IN S_ENGDSC
AND ZARBDSC IN S_ARBDSC
AND ZTARIFF IN S_TARIFF
AND ZPERNUM IN S_PERNUM
AND ZARRPRT IN S_ARRPRT.
IF SY-SUBRC <> 0.
MESSAGE TEXT-017 TYPE 'I'.
LEAVE TO TRANSACTION 'ZMSTR022'.
ELSE.
LOOP AT IT_ZMST_PERMIT INTO WA_ZMST_PERMIT.
WA_ZMST_PERMIT-ZPERM_MIN = TEXT-020.
MODIFY IT_ZMST_PERMIT INDEX SY-TABIX FROM WA_ZMST_PERMIT TRANSPORTING ZPERM_MIN .
ENDLOOP.
PERFORM ALV_DISP. " calling subroutine for ALV display
ENDIF.
ENDFORM. " fetch_Permit
*& Form fetch_permithi
text
--> p1 text
<-- p2 text
FORM FETCH_PERMITHI .
-Fetching data from zmst_permit based on the inputs on selection screen--
SELECT
ZPIDNUM
ZARBDSC
ZENGDSC
ZENQUAN
ZARQUAN
ZENUOM
ZTARIFF
ZARRPRT
ZPERNUM
ZEFFDT
ZEXPDT
FROM ZMST_PERMITHI INTO CORRESPONDING FIELDS OF TABLE IT_ZMST_PERMIT
WHERE ZPIDNUM IN S_PIDNUM
AND ZENGDSC IN S_ENGDSC
AND ZARBDSC IN S_ARBDSC
AND ZTARIFF IN S_TARIFF
AND ZPERNUM IN S_PERNUM
AND ZARRPRT IN S_ARRPRT
AND ZPERTYP = P_PERTYP.
IF SY-SUBRC <> 0.
MESSAGE TEXT-017 TYPE 'I'.
LEAVE TO TRANSACTION 'ZMSTR022'.
ELSE.
LOOP AT IT_ZMST_PERMIT INTO WA_ZMST_PERMIT.
CASE P_PERTYP.
WHEN 'I'.
WA_ZMST_PERMIT-ZPERM_MIN = TEXT-021.
MODIFY IT_ZMST_PERMIT INDEX SY-TABIX FROM WA_ZMST_PERMIT TRANSPORTING ZPERM_MIN .
WHEN 'H'.
WA_ZMST_PERMIT-ZPERM_MIN = TEXT-022.
MODIFY IT_ZMST_PERMIT INDEX SY-TABIX FROM WA_ZMST_PERMIT TRANSPORTING ZPERM_MIN .
ENDCASE.
ENDLOOP.
PERFORM ALV_DISP. " calling subroutine for ALV display
ENDIF.
ENDFORM. " fetch_permithi
*& Form val_PERTYP
text
--> p1 text
<-- p2 text
FORM VAL_PERTYP .
DATA: W_NAME TYPE VRM_ID,
IT_LIST TYPE VRM_VALUES,
WA_VALUE LIKE LINE OF IT_LIST.
WA_VALUE-KEY = ' '.
WA_VALUE-TEXT = TEXT-020.
APPEND WA_VALUE TO IT_LIST.
CLEAR WA_VALUE.
WA_VALUE-KEY = 'I'.
WA_VALUE-TEXT = TEXT-021.
APPEND WA_VALUE TO IT_LIST.
CLEAR WA_VALUE.
WA_VALUE-KEY = 'H'.
WA_VALUE-TEXT = TEXT-022.
APPEND WA_VALUE TO IT_LIST.
CLEAR WA_VALUE.
W_NAME = 'P_PERTYP'.
P_PERTYP = ' '.
CALL FUNCTION 'VRM_SET_VALUES'
EXPORTING
ID = W_NAME
VALUES = IT_LIST
EXCEPTIONS
ID_ILLEGAL_NAME = 1
OTHERS = 2.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
ENDFORM. " val_PERTYP
I hope this will help you.
Help children of U.N World Food Program by rewarding points and encourage others to answer your queries. -
"Touch up inside" button handler question
Say, if I assign a handler for the "Touch up inside" event for UIButton, what is the correct way to write the handler for it?
Both of the following ones seems to work for me:
-(IBAction) clickedButton
or
-(IBAction) clickedButton:(id)senderBoth exists.
Use the first form if you have a dedicated action to one button. Use the second one if your action could be fired by several event; in this case use the 'sender' parameter to know what object fired the event. -
BDC FB05 Radio button handling
Hi experts.
I got BDC requirement of FB05 transaction... Program is working fine in fore Foreground mode.In backgroud it shows error..
The reason is which I am selecting a radio-button from value 'NONE' to 'Document numbers' .
Can any one tell is there any special way for handling radio-buttons in recording of an transaction???
i already used the CTUPARAMS also...
ctu_options-defsize = 'X'.
ctu_options-dismode = 'N'. "E
CALL TRANSACTION 'FB05' USING gt_bdcdata
MODE gv_mode
MESSAGES INTO gt_messtab
OPTIONS FROM ctu_options.
Pls help.Hi,
U need to use all the four as ...
RF05A-XPOS1(01) = ''.
RF05A-XPOS1(02) = ''.
RF05A-XPOS1(03) = ''.
RF05A-XPOS1(04) = 'X'. " Selected
Hope this will help.
Regards,
Amitava -
Dear all,
Am using Jdev(11.1.1.5.0). This is my scenario, Consider am having a Exit button in which, I ve written the below code.
FacesContext facesContext = FacesContext.getCurrentInstance();
org.apache.myfaces.trinidad.render.ExtendedRenderKitService service = org.apache.myfaces.trinidad.util.Service.getRenderKitService(facesContext,ExtendedRenderKitService.class);
service.addScript(facesContext, "window.close();window.opener.location.href = window.opener.location.href;");This code works fine in Firefox browses, whereas it doesn't support for other major browsers such Chrome, Safari, IE, etc. How can I fix this issue. Pls suggest me some ideas.
-rakaHELP! You need help, no shit!
Please spend time WRITING A SUBJECT! -
Hi,
I have an ADF table displayed on my page and 3 buttons (ADD,REMOVE and SUBMIT) associated to this table. I would like to enable the SUBMIT button only when there is a new record added to the table. For eg: If i add 2 records and removed 2 records, i dont want the SUBMIT button to be enabled.
** my ADF table is based on an XSD not on the ADF BC.
How can i achieve this?
Thanks,
Lakshmi.Lakshmi,
Check if the app module is dirty and enable / disable the button accordingly.
Ref : is record changed in ADF BC.
-Arun -
[KDE 4.6] Power button handling problem
Hello, community!
I work on my laptop and I like to press power button of laptop to shutdown it. Today I have updated KDE to the latest version. Now when I press the power button the laptop freezes for about 30 seconds (mouse is still active, but system doesn't respond on pressings of mouse buttons).
arch x86_64vit wrote:You have dbus in rc.cond, but is it running?
adi-bear@unikum-laptop ~ $ ps aux | grep dbus
dbus 1867 0.0 0.0 2848 1412 ? Ss Jan28 0:04 /usr/bin/dbus-daemon --system
adi-bear 2618 0.0 0.0 3180 500 ? S Jan28 0:00 dbus-launch --sh-syntax --exit-with-session
adi-bear 2619 0.0 0.0 3552 1732 ? Ss Jan28 0:02 /usr/bin/dbus-daemon --fork --print-pid 5 --print-address 7 --session
adi-bear 32235 0.0 0.0 5460 840 pts/2 S+ 01:11 0:00 grep --colour=auto dbus -
Browser Back Button x Stale Data
Hi,
I'm facing a weird issue with back button handling.. whenever two sessions of the browser are opened to access the Oracle Applications, when changing something in one session, moving to the other session to change another thing and come back to the first session, even for completely different products and responsibilities, it gives me the stale data error as below. It seems like the session has been invalidated since I'm sure I haven't use the browser back button.
Is this an expected behavior?
++Error: Cannot Display Page++
++You cannot complete this task because you accessed this page using the browser's navigation buttons (the browser Back button, for example).++
++To proceed, please select the Home link at the top of the application page to return to the main menu. Then, access this page again using the application's navigation controls (menu, links, and so on) instead of using the browser's navigation controls like Back and Forward.++
Thanks,
EduardoYes,that is the expected behaviour. In oaf http session is synchronised with the clicks, so on same desktop if u open two different apps sessions you will face the error, which ur facing now.
--Mukul -
What's wrong with this button code
Dear All,
I am trying to set up a button handler for many buttons
rather just one. The
intention of this code is to say if I press Load1 to Load40
that button and
only that button's alpha should change to 50%. This code
makes them all 50%
alpha when the frame loads rather than on the onPress event.
Can someone please help me out with this one?
i = 0;
while (i<40) {
this["Load"+i].onPress = btnEvaluate(this["Load"+i]);
++i;
function btnEvaluate(target_btn:Button) {
target_btn._alpha = 50;
Thanks again.
Alastair MacFarlanekglad,
Thanks again. What would this group do without your help.
Alastair
"kglad" <[email protected]> wrote in message
news:gh0sq0$cbv$[email protected]..
> :
>
>
>
> for (var i = 0;i<40;i++) {
> this["Load"+i].onPress =function(){
> this._alpha=50;
> }
> } -
Please HELP on Button Click. URGENT Folks.!!!
Folks,
I need some very URGENT help.
When I click a Button,how do I associate this Button clicked with a particular Key?
I am reading data from a Hashtable in the foll.format
Monday Data [ More Info]
Tuesday Data [ More Info]
where :
Data to display is a Label
[More Info] is a JButton.
But I am unable to associate the button clicked with that particular Data.
ie I am unable to link the button clicked with the Key its associated to.
So when I click the 2nd More Info Button,I must be associated with Tuesday Data.
I am not being able to link Button Clicked to its Key Value.
Any one can help me to get the Key Value please?
Or is displayng thru Hashtable not right? Do I need to use some
other collection.
My code is:
public class JPanelDemo extends JFrame{
private JPanel JButtonPanel;
private Hashtable ht = new Hashtable();
Enumeration enum;
String str;
public JPanelDemo() {
JButtonPanel = new JPanel();
Container c = getContentPane();
// Put Data into Table.
ht.put("Monday ", new JButton("More Info"));
ht.put("Tuesday ", new JButton("More Info"));
ht.put("Wednesday ", new JButton("More Info"));
ht.put("Thursday ", new JButton("More Info"));
JButtonPanel.setLayout(new GridLayout(ht.size(),ht.size()) ) ;
// Instantiate ButtonHandler.
ButtonHandler handler = new ButtonHandler();
// Enumerate thru Keys.
enum = ht.keys();
while(enum.hasMoreElements()){
str = (String) enum.nextElement();
JButtonPanel.add(new JLabel(str)); // Key
JButton jB = (JButton)ht.get(str); // Value
JButtonPanel.add(jB);
jB.addActionListener(handler);
c.add(JButtonPanel,BorderLayout.NORTH);
show();
public static void main(String[] args) {
JPanelDemo JPanelDemo1 = new JPanelDemo();
// Inner Class for BUTTON handling.
private class ButtonHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
JOptionPane.showMessageDialog(null,
"You Pressed " + e.getActionCommand(),
"I NEED THE KEY VALUE HERE", /* key VALUE required ie Monday,Tuesday..*?
0);
} // End ButtonHandler.
} // End of classHi,
i have modified your program to produce the intended results..
Hope this helps!
josh
public class JPanelDemo extends JFrame{
private JPanel JButtonPanel;
private Hashtable ht = new Hashtable();
Enumeration enum;
String str;
public JPanelDemo() {
JButtonPanel = new JPanel();
Container c = getContentPane();
// Put Data into Table.
ht.put("Monday ", new JButton("More Info"));
ht.put("Tuesday ", new JButton("More Info"));
ht.put("Wednesday ", new JButton("More Info"));
ht.put("Thursday ", new JButton("More Info"));
JButtonPanel.setLayout(new GridLayout(ht.size(),ht.size()) ) ;
// Instantiate ButtonHandler.
ButtonHandler handler = new ButtonHandler();
// Enumerate thru Keys.
enum = ht.keys();
while(enum.hasMoreElements()){
str = (String) enum.nextElement();
JButtonPanel.add(new JLabel(str)); // Key
JButton jB = (JButton)ht.get(str); // Value
JButtonPanel.add(jB);
jB.addActionListener(handler);
c.add(JButtonPanel,BorderLayout.NORTH);
show();
public static void main(String[] args) {
JPanelDemo JPanelDemo1 = new JPanelDemo();
public String compare(JButton b){
int i = ht.size();
Enumeration enum1 = ht.keys();
while(enum1.hasMoreElements()){
String str = (String) enum1.nextElement();
JButton jB = (JButton)ht.get(str); // Value
if( jB.equals(b) ){
return str;
return null;
// Inner Class for BUTTON handling.
private class ButtonHandler implements ActionListener {
public void actionPerformed(ActionEvent e) {
JButton b = (JButton)e.getSource();
String s = compare(b);
JOptionPane.showMessageDialog(null,
"You Pressed " + s,
"I NEED THE KEY VALUE HERE",0);
} // End of class
Maybe you are looking for
-
I just can't find my ip cam on the network....?
i just can't find my ip cam on the network....? Its plugged directly to time capsule whoyh ethernet cabel. but nothing to find on my mac...?? its a sony sensor 2mp ip cam an i have iMac and time capsule and some iPhone and a hp printer on this networ
-
Can I buy a new Logic Board for an iBook G3 700 12"?
The Logic Board in my iBook G3 700 12" just died. My local reseller says it doesn't qualify for the replacement program. Anyone know where can I get a NEW Logic Board for my iBook? I don't like the thought of buying a used on on eBay and having the s
-
Can't install trusty old Photoshop 5.0 on new Windows 8 desktop
I cannot seem to install Photoshop 5.0.2 on my new Windows 8 desktop computer. I push the install button from the cd and it does nothing. I tried copying and pasting the old installed program onto my desktop and filling in the necessary dll files t
-
Hello I have problem: my logic pro 7.2.2 is not opens. presing on icon, jumps for second and stops. wave burner, loop utility the same. all other audio app are running ok. tried to repair permissions, uninstall and install logic, delete logic prefere
-
ADF 10g: OutOfMemoryError
Hi, while running my ADF BC 10g application on the server for around 5 days, it crashes with the following message: webapp: Servlet error java.lang.OutOfMemoryError at java.util.zip.ZipFile.open(Native Method) at java.util.zip.ZipFile.<init