Create a user-defined selection variant in transaction ME21N
Hi,
In transaction ME21N with the 'Document Overview' feature turned on we can view a list of standard selection variants. I would like to add a user-defined selection variant to that list. There is an OSS Note 377180 present which describes how to do that but(as per transaction SNOTE) that note cannot be implemented in our system. Is there any other way to get that done?
Any help would certainly be appreciated.
Thanks,
Alam.
I would suggest that you replay the transaction with breaks, so that you can see exactly what is happening (in the start options, set the SAPGUI replay options to stop at each ProcessedScreen)
It may be that the Selection Variant button is not present during replay. In this case, you would need to make the step where this button is pressed as optional.
ME21N is a difficult transaction to automate because it always remembers what you were last doing in it and restarts the transaction from that point. You can delete the user settings (so you always start the transaction as though for the first time) using the following code in your script:
ABAP.
* Delete all User-Settings in MM
DELETE FROM ESDUS WHERE UNAME = SY-UNAME.
* Delete all User-Settings in search help
DELETE FROM DDSHDEFSH WHERE USERNAME = SY-UNAME.
ENDABAP.
Similar Messages
-
Creating a User-defined Selection variant for Transaction ME21N
Hi,
In transaction ME21N with the 'Document Overview' feature turned on we can view a list of standard selection variants. I would like to add a user-defined selection variant to that list. There is an OSS Note 377180 present which describes how to do that but(as per transaction SNOTE) that note cannot be implemented in our system. Is there any other way to get that done?
Any help would certainly be appreciated.
Thanks,
Alam.So I am having a similar issue. I have a fixed length flat file with 3 different record types.
1 a header ( length is 82 bytes with the first byte set to H ( single record always the first )
2 a detail record ( length is 382 bytes ) with the first byte set to D ( multiple records )
3 a trailer record ( length is 82 bytes ) with the first byte set to T ( single record always the last )
I created a UD OTD with 3 elements for each record type, RECORD_TYPE is the first field 1 byte. Matching for each on either H,D, or T. When I try and test the OTD with the Run Test button I get an unmarshal error
<SOD>""<POS>"HACCUMULAT..." failed input match, Fog#431, after <no path>: failed node: trailing junk in fixed/parent
HACCUMULATED BENEFIT TRANSACTION FILE 20080801 20080825 0 0
D ar3531 ar3531 ar3531 ar3531000 55887027260 30.000 30 5098765 20080804 000T114 120080806 82820P30000001024511 25.00 0.00 25.00 0.00 25.00 25.00 0.00 0.00 0.00 0.00 0.00T
TACCUMULATED BENEFIT TRANSACTION FILE 20080801 20080825 2894 0 0
Not sure whats going on, so if anyone has any suggestions on where to look that would be great
Thanks -
User-defined fields in Enjoy transactions
Hi,
we have created two user-defined fields and added these in the entry variant for Enjoy transactions. However, we would like the fields to show with fewer characters. We have tried to reduce the length in the entry variant, but it seems that you cannot do this. We do not want to reduce the length of the field in the database.
Is there any way around this?
Thanks,
MolyHi,
You should be able to do it via screen painter.
Please check this help:-
[http://help.sap.com/saphelp_nw04/helpdata/en/d1/801c3a454211d189710000e8322d00/content.htm]
Also you should put this query in SAP ABAP forum, where you will get more appropriate answers.
Regards,
Gaurav -
User Exit to add user-defined selection critieria onto VL10G
Does anyone know how to add user-defined selection criteria onto <b>VL10G</b> - Sales and purchase order display screen? OSS note <b>524424</b> states the userexit to transfer user-defined selection criteria from the selection screen to the report but no information on how to add the selection criteria on the screen. Is that something can be done through configuration or user-exit?
Any advice or sample is greatly appreciated.I was in a hurry, I forgot to add, the user role specific selection screen assignment to VL10G is done at "delivery scenario" level
The delivery scenarios that are predefined in the system can be found under Logistics Execution -> Outbound Process -> Goods Issue for Outbound Delivery -> Outbound Delivery -> Create -> Collective Processing of Documents for Shipment.
You can make the following settings in a delivery scenario:
<b>Selection screen</b>
You can use the selection screen parameters to define the appearance of the selection screen used to select the delivery list.
There are three combinations of selection parameters available that each include a different number of tabs.
A long selection screen with no tabs
A selection screen with three tabs
A selection screen with six tabs
The selection criteria is the same on all three screens in the standard system, it is simply arranged differently.
This parameter also triggers scheduling of the report for processing the delivery list, with the same three available tab options.
Customer enhancements are also possible in the LV50R_PREFZ1 program, which should be triggered from a delivery scenario.
<b>User role</b>
In the standard system, a predefined user role is assigned to each delivery scenario. If necessary, you can copy these user roles into your own user roles, make changes as required, and then assign them to a delivery scenario of your choice.
If the user role assignment for a delivery scenario is changed in Customizing, the new settings are valid for all users that carry out this delivery scenario. -
Problem with ALV and user defined selection screen. please help!
Hi Experts,
I have program which has a user defined selection screen 9001. On executing the selection screen i call a ALV using resuse_alv_grid function module.
What problem I am facing is that when I press back button from ALV page it goes to the se38 editor instead of selection screen.
How to resolve this?
Thanks
GopalHi,
This might be due to LEAVE TO TRANSACTION statement. You might be running the program from SE38. Try to run the program using Z-TCode assigned to it.
Thanks and Regards,
Bharat Kumar Reddy.V
Message was edited by: Bharat Reddy V -
Transporting user defined selection screen from one server to another
How to transport a user defined selection screen (0100) from one server to another.
PBO and PAI modules written in PBO and PAI events for the selection screen are
not transported.
How to transport the modules in the events for the selection screen.Hi,
Krishna, <b>All</b> the Objects(prms,classes,tables,stru...) will be transported thru Transport Objects only..
Check Utilities->version->Version Mgt -> Here u will have the Transport number(if it's created under trnasportable obj).If you do not find TP no,then u would hav saved that as a Local Object.
Then Relase the TP no from SE10 Trnx.
Rgds,
Jothi.P -
User defined Selection screen for Logical database
hi all,
can we display a user defined selection screen instead of the default selection screen in LDB . eg pnp
cheers
senthilHi,
to my knowledge, the selection screen of a logical database can only be changed (versions!) in the logical database itself.
What you can do is, write a program with your own selection screen an then either call another program that uses the LDB or - much better - you call the LDB from your program with function module LDB_PROCESS!
Example taken from the example library (TA ABAPDOCU):
<b>REPORT demo_logical_database.
DATA wa_spfli TYPE spfli.
SELECT-OPTIONS s_carr FOR wa_spfli-carrid.
DATA: callback TYPE TABLE OF ldbcb,
callback_wa LIKE LINE OF callback.
DATA: seltab TYPE TABLE OF rsparams,
seltab_wa LIKE LINE OF seltab.
callback_wa-ldbnode = 'SPFLI'.
callback_wa-get = 'X'.
callback_wa-get_late = 'X'.
callback_wa-cb_prog = sy-repid.
callback_wa-cb_form = 'CALLBACK_SPFLI'.
APPEND callback_wa TO callback.
CLEAR callback_wa.
callback_wa-ldbnode = 'SFLIGHT'.
callback_wa-get = 'X'.
callback_wa-cb_prog = sy-repid.
callback_wa-cb_form = 'CALLBACK_SFLIGHT'.
APPEND callback_wa TO callback.
seltab_wa-kind = 'S'.
seltab_wa-selname = 'CARRID'.
LOOP AT s_carr.
MOVE-CORRESPONDING s_carr TO seltab_wa.
APPEND seltab_wa TO seltab.
ENDLOOP.
CALL FUNCTION 'LDB_PROCESS'
EXPORTING
ldbname = 'F1S'
variant = ' '
TABLES
callback = callback
selections = seltab
EXCEPTIONS
ldb_not_reentrant = 1
ldb_incorrect = 2
ldb_already_running = 3
ldb_error = 4
ldb_selections_error = 5
ldb_selections_not_accepted = 6
variant_not_existent = 7
variant_obsolete = 8
variant_error = 9
free_selections_error = 10
callback_no_event = 11
callback_node_duplicate = 12
OTHERS = 13.
IF sy-subrc <> 0.
WRITE: 'Exception with SY-SUBRC', sy-subrc.
ENDIF.
FORM callback_spfli USING name TYPE ldbn-ldbnode
wa TYPE spfli
evt TYPE c
check TYPE c.
CASE evt.
WHEN 'G'.
WRITE: / wa-carrid, wa-connid, wa-cityfrom, wa-cityto.
ULINE.
WHEN 'L'.
ULINE.
ENDCASE.
ENDFORM.
FORM callback_sflight USING name TYPE ldbn-ldbnode
wa TYPE sflight
evt TYPE c
check TYPE c.
WRITE: / wa-fldate, wa-seatsocc, wa-seatsmax.
ENDFORM.</b> -
User-defined selection list support in HA Release 6.5
Dear all, As in Hyperion Wired for OLAP v4.1.2 and Hyperion Analyzer Release 5.0.3, it can allow users to create user-defined selection list for a dimension under "Advanced" option of Cube Navigator, is there the same function in Hyperion Analyzer Release 6.5? If no, is there any turnaround or alternative?Thanks for your help.Regards, Zero
Hello,
You must have defined user command for the radio button. This is not required. Just try putting it in at selection screen. AT SELECTION-SCREEN ON RADIOBUTTON GROUP rgp1.
the moment the user clicks the radio button it will go to this event and call the screen. Just use AT SELECTION-SCREEN.
Regards,
Shekhar Kulkarni -
Create a user defined approval query
anybody can help me whitch syntax i have to use to create a user defined query for an approval template please?
for Exp: i want to create a query to check if a the customer in an invoice ="C0001"
so select distinct 'true' where ????(current invoice customercode)="C0001"
10xHi.......
Try This......
Select Distinct 'True' From OCRD T0 where T0.CardCode='C0001' and T0.CardCode=$[OINV.CardCode.0]
Hope this will solve the problem......
Reagards,
Rahul -
Syntax error when creating a user-defined table type in SQL Server 2012
Why am I getting a syntax error when creating a user-defined table type in SQL Server 2014?
CREATE TYPE ReportsTableType AS TABLE
( reportId INT
, questionId INT
, questionOrder INT );
Results:
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'AS'.Hope these posts could help,
https://social.msdn.microsoft.com/Forums/sqlserver/en-US/37a45a9a-ed8c-4655-be93-f6e6d5ef44be/getting-incorrect-syntax-while-creating-a-table-type-in-sql-server-2008-r2?forum=transactsql
Regards, Dineshkumar,
Please Mark as Answer if my post answers your question and
Vote as Helpful if it helps you -
Problem with user defined selection-screens
Hi,
in my case, i have a default selection screen and a user defined selection screen. Now, after selecting a radio button in default selection screen, the user defined selection screen is called. after executing it report output is displayed. now if i press f3 (back) it is going to default selection screen. here my requirement is, when i press f3 it should go to the user defined selection.
Can u plz help me solve this.
bye n regards
sreeAny modifications to screen 1000 will be lost the next time the program is generated.
When the user hits the back key from the report output, your ABAP is restarted just like when you originally started it. That is why you are getting the default selection screen again.
Use the AT USER-COMMAND event. When BACK is hit from the report, use the SUBMIT command to re-execute the program, passing it the selections from the default selection screen. Leave out the RETURN option.
For help on filling the selection screen during SUBMIT, help is available at
http://help.sap.com/saphelp_470/helpdata/en/9f/dba51a35c111d1829f0000e829fbfe/frameset.htm -
Hi, In my program i used a default seelction screen and 5 user defined selection screen. Based on the selections made in default selection screen, it should go to the corresponding user defined screen.
and the problem iam getting if i press enter jey insted of F8.
""Selection screen ZP2I_MASSCHANGE_TEMP1 1000 was
not called using CALL SELECTION-SCREEN"""
the code is as follows.
A T S E L E C T I O N-S C R E E N
*AT SELECTION-SCREEN.
AT SELECTION-SCREEN ON RADIOBUTTON GROUP rgp1.
CHECK SY-UCOMM EQ 'ONLI' OR SY-UCOMM EQ 'CRET' .
Download
IF r_dwnld = c_check.
Material Screen Call
IF r_matplt = c_check.
CLEAR p_werks7.
sree = 'A'.
CALL SELECTION-SCREEN 170.
ENDIF.
Material Storage Screen Call
IF r_matstr = c_check.
CLEAR p_werks1.
sree = 'B'.
CALL SELECTION-SCREEN 110.
ENDIF.
Material Handling Screen Call
IF r_mathan = c_check.
CLEAR p_werks2.
sree = 'C'.
CALL SELECTION-SCREEN 120.
ENDIF.
Material Pick/Up Delivery Screen Call
IF r_pcdt = c_check.
CLEAR p_werks3.
sree = 'D'.
CALL SELECTION-SCREEN 130.
ENDIF.
Material Inboundlogistics Screen Call
IF r_inlogs = c_check.
CLEAR p_werks4.
sree = 'E'.
CALL SELECTION-SCREEN 140.
ENDIF.
Material Packaging Screen Call
IF r_pkng = c_check.
CLEAR p_werks5.
sree = 'F'.
CALL SELECTION-SCREEN 150.
ENDIF.
ENDIF.
Upload Screen Call
IF r_upld = c_check.
IF ( r_matplt = c_check OR
r_matstr = c_check OR
r_mathan = c_check OR
r_pcdt = c_check OR
r_inlogs = c_check OR
r_pkng = c_check ).
CLEAR p_uload.
sree = 'G'.
CALL SELECTION-SCREEN 160.
ENDIF.
ENDIF.
s T A R T - O F - S E L E C T I O N
START-OF-SELECTION.
DOWNLOAD
CASE sree.
WHEN 'A'.
Select Material Details
PERFORM get_material_data.
IF NOT tbl_matplt[] IS INITIAL.
IF p_dalv7 = c_check.
Display list in ALV
PERFORM setup_alv_report.
ELSE.
Download Storage data into local file
PERFORM download_file USING p_matdet.
ENDIF.
ELSE.
MESSAGE s020.
ENDIF.
CALL SELECTION-SCREEN 170.
Select Material storage data
WHEN 'B'.
PERFORM get_storage_data.
IF NOT tbl_matstr[] IS INITIAL.
IF p_dalv1 = c_check.
Display list in ALV
PERFORM setup_alv_report.
ELSE.
Download Storage data into local file
PERFORM download_file USING p_matstr.
ENDIF.
ELSE.
MESSAGE s020.
ENDIF.
CALL SELECTION-SCREEN 110.
Select Material Handling data
WHEN 'C'.
PERFORM get_materialhandling.
IF NOT tbl_mathand[] IS INITIAL.
IF p_dalv2 = c_check.
Display list in ALV
PERFORM setup_alv_report.
ELSE.
Download Material Handling data into local file
PERFORM download_file USING p_mathan.
ENDIF.
ELSE.
MESSAGE s020.
ENDIF.
CALL SELECTION-SCREEN 120.
Select Pick/Up DayTime data
WHEN 'D'.
PERFORM get_pickup_delivery.
IF NOT tbl_pcdel[] IS INITIAL.
IF p_dalv3 = c_check.
Display list in ALV
PERFORM setup_alv_report.
ELSE.
Download Pick/Up DayTime data into local file
PERFORM download_file USING p_pcdt.
ENDIF.
ELSE.
MESSAGE s020.
ENDIF.
CALL SELECTION-SCREEN 130.
Select Inbound Logistics data
WHEN 'E'.
PERFORM get_inboundlogistics.
IF NOT tbl_inlog[] IS INITIAL.
IF p_dalv4 = c_check.
Display list in ALV
PERFORM setup_alv_report.
ELSE.
Download Inbound Logistics data into local file
PERFORM download_file USING p_inlogs.
ENDIF.
ELSE.
MESSAGE s020.
ENDIF.
CALL SELECTION-SCREEN 140.
Select Packaging data
WHEN 'F'.
PERFORM get_packaging.
IF NOT tbl_pkng[] IS INITIAL.
IF p_dalv5 = c_check.
Display list in ALV
PERFORM setup_alv_report.
ELSE.
Download Packaging data into local file
PERFORM download_file USING p_pkng.
ENDIF.
ELSE.
MESSAGE s020.
ENDIF.
CALL SELECTION-SCREEN 150.
WHEN 'G'.
Material Details data upload
IF r_matplt = c_check.
Free memory IDs corresponding to upload tables
PERFORM free_memory.
Upload Material details from local file
PERFORM load_file USING p_uload.
Prepare data
PERFORM prepare_mat_data.
Get actual Material Details from ZP2_MATPLT
PERFORM get_old_material_data.
Validate new data against database entries
PERFORM validate_material_data.
Check Plant authorization
Move plants to itab.
REFRESH tbl_plts.
LOOP AT tbl_matplt.
tbl_plts-werks = tbl_matplt-werks.
APPEND tbl_plts.
CLEAR tbl_plts.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM tbl_plts
COMPARING werks.
Check authoriztions
PERFORM check_plant_authorization1 TABLES tbl_plts.
REFRESH tbl_plts.
IF p_trun IS INITIAL.
Modify material data
PERFORM modify_zp2_matplt.
ENDIF.
Material Storage data upload
IF r_matstr = c_check.
Free memory IDs corresponding to upload tables
PERFORM free_memory.
Upload material storage data from local file
PERFORM load_matstr_data USING p_uload.
PERFORM load_file USING p_uload.
Get the material storage data from database
PERFORM get_old_storage_data.
Get material plant data for the corresponding
Storage data.
PERFORM get_matplt_data_storage.
Get data from table fields
PERFORM get_tblfld_values.
Validate data against database entries
PERFORM validate_storage_data.
Check Plant authorization
Move plants to itab.
REFRESH tbl_plts.
LOOP AT tbl_matstr.
tbl_plts-werks = tbl_matstr-werks.
APPEND tbl_plts.
CLEAR tbl_plts.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM tbl_plts
COMPARING werks.
Check authoriztions
PERFORM check_plant_authorization1 TABLES tbl_plts.
REFRESH tbl_plts.
IF p_trun IS INITIAL.
Modify material storage data
PERFORM modify_zp2matstr_table.
ENDIF.
ENDIF.
Material Handling data upload
IF r_mathan = c_check.
Free memory IDs corresponding to upload tables
PERFORM free_memory.
Upload material Handling data from local file
PERFORM load_file USING p_uload.
Get the material Handling data from database
PERFORM get_old_materialhandling.
Get material plant data for the corresponding
handling data.
PERFORM get_matplt_data_handling.
Validate data against database entries
PERFORM validate_handling_data.
Check Plant authorization
Move plants to itab.
REFRESH tbl_plts.
LOOP AT tbl_mathand.
tbl_plts-werks = tbl_mathand-werks.
APPEND tbl_plts.
CLEAR tbl_plts.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM tbl_plts
COMPARING werks.
Check authoriztions
PERFORM check_plant_authorization1 TABLES tbl_plts.
REFRESH tbl_plts.
IF p_trun IS INITIAL.
Modify material handling data
PERFORM modify_zp2mathand_table.
ENDIF.
ELSEIF sy-ucomm = c_s.
LEAVE SCREEN.
ENDIF.
Material Pick/Up DayTime data upload
IF r_pcdt = c_check.
Free memory IDs corresponding to upload tables
PERFORM free_memory.
Upload Pick/Up DayTime file data from local file
PERFORM load_file USING p_uload.
Get the Pick/Up DayTime data from database
PERFORM get_old_pickup_delivery.
Get Inbound logistics data corresponding to handling
PERFORM get_inlogs_pcdel.
Validate data against database entries
PERFORM validate_pcdel_data.
Check Plant authorization
Move plants to itab.
REFRESH tbl_plts.
LOOP AT tbl_pcdel.
tbl_plts-werks = tbl_pcdel-werks.
APPEND tbl_plts.
CLEAR tbl_plts.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM tbl_plts
COMPARING werks.
Check authoriztions
PERFORM check_plant_authorization1 TABLES tbl_plts.
REFRESH tbl_plts.
IF p_trun IS INITIAL.
Modify Pick/Up DayTime table
PERFORM modify_zp2pcdt_table.
ENDIF.
ELSEIF sy-ucomm = c_s.
LEAVE SCREEN.
ENDIF.
Material Inbound Logistics data upload
IF r_inlogs = c_check.
Free memory IDs corresponding to upload tables
PERFORM free_memory.
Upload Inbound Logistics file data from local file
PERFORM load_file USING p_uload.
Get the Inbound Logistics data from database
PERFORM get_old_inboundlogistics.
Get data from table fields
PERFORM get_tblfld_values.
Get Vendor data
PERFORM get_vendor_inlog.
Get material plant data for the corresponding
Inboundlogistics data.
PERFORM get_matplt_data_inlog.
Validate data against database entries
PERFORM validate_inlog_data.
Check Plant authorization
Move plants to itab.
REFRESH tbl_plts.
LOOP AT tbl_inlog.
tbl_plts-werks = tbl_inlog-werks.
APPEND tbl_plts.
CLEAR tbl_plts.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM tbl_plts
COMPARING werks.
Check authoriztions
PERFORM check_plant_authorization1 TABLES tbl_plts.
REFRESH tbl_plts.
IF p_trun IS INITIAL.
Modify Inbound Logistics table
PERFORM modify_zp2inlog_table.
ENDIF.
ENDIF.
Packaging data upload
IF r_pkng = c_check.
Free memory IDs corresponding to upload tables
PERFORM free_memory.
Upload Packaging file data from local file
PERFORM load_file USING p_uload.
Get the Packaging data from database
PERFORM get_old_packaging.
Get material plant data for the corresponding
Packaging data.
PERFORM get_matplt_data_pkng.
Get Vendor data
PERFORM get_vendor_pkng.
Get data from table fields
PERFORM get_tblfld_values.
Load Primary container reference data
PERFORM primary_container_data.
Validate data against database entries
PERFORM validate_packaging_data.
Check Plant authorization
Move plants to itab.
REFRESH tbl_plts.
LOOP AT tbl_pkng.
tbl_plts-werks = tbl_pkng-werks.
APPEND tbl_plts.
CLEAR tbl_plts.
ENDLOOP.
DELETE ADJACENT DUPLICATES FROM tbl_plts
COMPARING werks.
Check authoriztions
PERFORM check_plant_authorization1 TABLES tbl_plts.
REFRESH tbl_plts.
IF p_trun IS INITIAL.
Modify Packaging data
PERFORM modify_zp2pckg_table.
ENDIF.
ENDIF.
ENDIF.
IF p_trun = c_check.
Display the Error list
PERFORM display_result.
CALL SELECTION-SCREEN 160.
ENDIF.
ENDCASE.
Another problem is If i press BACK on the report output, it is coming to the default selection screen. and my requirement is, it should come to the corressponding user defined selection screen and not the default selection screen.
PLz help me in this regard.. Iam breaking my heading, but could not able to solve it.
Thanks in advance
sreeHello,
You must have defined user command for the radio button. This is not required. Just try putting it in at selection screen. AT SELECTION-SCREEN ON RADIOBUTTON GROUP rgp1.
the moment the user clicks the radio button it will go to this event and call the screen. Just use AT SELECTION-SCREEN.
Regards,
Shekhar Kulkarni -
How to create a user defined trigger and execute my form
Hi All,
I am working with oracle Apps r12 and oracle forms 10g.
I have created a custom form. So i need to create a special menu and when the user click the menu it need to open a new block and query it accordingly.
I have followed this link
http://egeapp.egeseramik.com:8000/pls/prod/fndgfm/fnd_help.get/us/fnd/@g_special#g_special
and created a special menu in my custom form
In PRE_FORM trigger i have coded this
APP_SPECIAL.INSTANTIATE('SPECIAL3','&ACTION HISTORY DETAILS',NULL,TRUE,'LINE');
and IN PRE_BLOCK i have coded this
APP_SPECIAL.ENABLE('SPECIAL3',PROPERTY_ON);.
Now the special menu is enabled when i press it shows error
that frm-40700 no such trigger:special3.
Now i came to know that we need to create a user defined trigger put the code and when we press special menu it need to query it accordingly.
Can any one tell the steps that how to do that accordingly.
Thanks & regards
SrikkanthHi ,
The problem is fixed, the link mentioned below might be use full for doing this.
http://docs.oracle.com/cd/E18727_01/doc.121/e12897/T302934T457083.htm
regards
Srikkanth -
Creating a user defined control using java Beans
Hi,
I want to create a user defined control which is used to draw a line ...
same as we using in VB as Line control.In java we will create the component using using Beans . I created a code
which will draw a line in the run time .For tat i extend the class with JPanel,but i cant use the same program in beans....b'coz it simply draws the jpanel when we drag and drop that control in the form....
so can u give me some ideas to create a control which is used to draw a line .....i am attaching the same which i did .....
thank u in advance...
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.image.BufferedImage;
import javax.swing.*;
import javax.swing.event.*;
public class Line extends JPanel
BufferedImage image;
Color color;
Stroke stroke;
Point start = new Point();
Point end = new Point();
public Line()
color = Color.blue;
stroke = new BasicStroke(1f, BasicStroke.CAP_BUTT,
BasicStroke.JOIN_MITER);
protected void paintComponent(Graphics g)
super.paintComponent(g);
if(image == null)
initImage();
g.drawImage(image, 0, 0, this);
// Draw temp line over image.
Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2.setPaint(Color.red);
g2.drawLine(start.x, start.y, end.x, end.y);
public void setTempPoints(Point p1, Point p2) {
start = p1;
end = p2;
repaint();
public void draw(Point p1, Point p2)
Graphics2D g2 = image.createGraphics();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2.setPaint(color);
g2.setStroke(stroke);
g2.drawLine(p1.x, p1.y, p2.x, p2.y);
g2.dispose();
start = end;
repaint();
private void clearImage()
Graphics g = image.getGraphics();
g.setColor(getBackground());
g.fillRect(0, 0, image.getWidth(), image.getHeight());
g.dispose();
repaint();
private void initImage()
int w = getWidth();
int h = getHeight();
image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = image.createGraphics();
g2.setPaint(getBackground());
g2.fillRect(0,0,w,h);
g2.dispose();
public static void main(String[] args)
Line wbclient = new Line();
DrawingListener listener = new DrawingListener(wbclient);
wbclient.addMouseListener(listener);
wbclient.addMouseMotionListener(listener);
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.getContentPane().add(wbclient);
f.setSize(400,400);
f.setLocation(200,200);
f.setVisible(true);
class DrawingListener extends MouseInputAdapter
Line wbclient;
Point start;
Point end;
final int MIN_DIST = 5;
public DrawingListener(Line fh)
this.wbclient = fh;
public void mousePressed(MouseEvent e)
start = e.getPoint();
public void mouseReleased(MouseEvent e)
end=e.getPoint();
if(start.distance(end) > MIN_DIST)
wbclient.draw(start, end);
public void mouseDragged(MouseEvent e)
wbclient.setTempPoints(start, e.getPoint());
}Hi Ravi,
How about something like this:
IUserMaint user = UMFactory.getUserFactory().newUser("myNewUser");
user.setFirstName("1st Name");
user.setLastName("2nd Name");
user.setEmail("[email protected]");
user.save();
user.commit();
IUserAccount uacc = UMFactory.getUserAccountFactory().newUserAccount("myNewUser", user.getUniqueID());
uacc.setPassword("initial");
uacc.setPasswordChangeRequired(false);
uacc.save();
uacc.commit();
Hope this helps.
Daniel -
Creating a user defined control in java using java Beans
Hi,
I want to create a user defined control for drawing a line like a line control which is used in Visual Basic. I have created a program which will be drawing a line in runtime..but i cant use the same program in the beans to act as a user defined control to work as a line control ..b'coz i extend the class with JPanel..so when i drag and drop the control i am getting the panel only...so can u give me some ideas to create the line control...i am attaching the code which i created ...so pls do make some modification or correction to work as a line control....
Thank u in advance..........
import java.awt.*;
import java.awt.event.*;
import java.awt.geom.*;
import java.awt.image.BufferedImage;
import javax.swing.*;
import javax.swing.event.*;
public class Line extends JPanel
BufferedImage image;
Color color;
Stroke stroke;
Point start = new Point();
Point end = new Point();
public Line()
color = Color.blue;
stroke = new BasicStroke(1f, BasicStroke.CAP_BUTT,
BasicStroke.JOIN_MITER);
protected void paintComponent(Graphics g)
super.paintComponent(g);
if(image == null)
initImage();
g.drawImage(image, 0, 0, this);
// Draw temp line over image.
Graphics2D g2 = (Graphics2D)g;
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2.setPaint(Color.red);
g2.drawLine(start.x, start.y, end.x, end.y);
public void setTempPoints(Point p1, Point p2) {
start = p1;
end = p2;
repaint();
public void draw(Point p1, Point p2)
Graphics2D g2 = image.createGraphics();
g2.setRenderingHint(RenderingHints.KEY_ANTIALIASING,
RenderingHints.VALUE_ANTIALIAS_ON);
g2.setPaint(color);
g2.setStroke(stroke);
g2.drawLine(p1.x, p1.y, p2.x, p2.y);
g2.dispose();
start = end;
repaint();
private void clearImage()
Graphics g = image.getGraphics();
g.setColor(getBackground());
g.fillRect(0, 0, image.getWidth(), image.getHeight());
g.dispose();
repaint();
private void initImage()
int w = getWidth();
int h = getHeight();
image = new BufferedImage(w, h, BufferedImage.TYPE_INT_RGB);
Graphics2D g2 = image.createGraphics();
g2.setPaint(getBackground());
g2.fillRect(0,0,w,h);
g2.dispose();
public static void main(String[] args)
Line wbclient = new Line();
DrawingListener listener = new DrawingListener(wbclient);
wbclient.addMouseListener(listener);
wbclient.addMouseMotionListener(listener);
JFrame f = new JFrame();
f.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);
f.getContentPane().add(wbclient);
f.setSize(400,400);
f.setLocation(200,200);
f.setVisible(true);
class DrawingListener extends MouseInputAdapter
Line wbclient;
Point start;
Point end;
final int MIN_DIST = 5;
public DrawingListener(Line fh)
this.wbclient = fh;
public void mousePressed(MouseEvent e)
start = e.getPoint();
public void mouseReleased(MouseEvent e)
end=e.getPoint();
if(start.distance(end) > MIN_DIST)
wbclient.draw(start, end);
public void mouseDragged(MouseEvent e)
wbclient.setTempPoints(start, e.getPoint());
}%TYPE is PL/SQL syntax, which thus cannot be used inside SQL.
The other way around, SQL can be used inside PL/SQL.
Regards,
K.
Maybe you are looking for
-
Can I use cascading parameters in a fetchXML report.
I'm trying to write a report For CRM Online in FetchXML. I want to use pre-filtering to force users to run the report from the Account form so the results are limited to one account because my database is quite large and if they use the Advanced Fin
-
Adobe Acrobat 9 Pro: How can i use german quotation marks automatically in my formular?
Only english quotation marks are used automatically. Thanks a lot for help!
-
Exception while trying to write xml file
When I try to write my DOM tree to an XML file a get the following exception form the transformer.transform() function call: Exception in thread "AWT-EventQueue-0" java.lang.AbstractMethodError: org.apache.crimson.tree.XmlDocument.getXmlStandalone()Z
-
Hi What does commit=y mean when use it with import syntax? bye.
-
How can I ensure that a file is only ftp-ed once?
Hi Frens, Im at the level of testing my codes and I noticed my code deliberately ftps a file even though it has been sent. Some servers do not accept duplicate files to be sent at their servers therefore causing FTP ok at first attempt and FTP not su