Preprocess and hyperlink events
hi,
i am attempting to change some component properties when a user clicks a hyperlink on a page. the link's url points to the same page that the link is on, and i'd like for clicking the link to result in some new components on the page being rendered and some other components being hidden. however, i'm having problems figuring out where to put the code to handle the rendering of components.
i've tried to set the appropriate component properties in the action handler for the link, but this doesn't work. actually, it doesn't appear that this link_action() method is being called at all. why is that?
alternatively i tried putting the code in the preprocess() method, but clicking a link isn't considered a postback, is it? this approach has not worked either.
any help is much appreciated.
Hi
I only want to say that I have similar problem, and can't figure it out.
I am changing a sessionbean property in link_action() method and I can tell you it works, it updates the property. But I don't know where to put the code that updates the component values, after that session bean property has changed.
I tried putting the code in preprocess, prerender... (And some places I probably shouldn't say in public :D) Nothing worked.
Is there a good explanation of what exactly these methods do?
Similar Messages
-
HyperlinkListener and HyperLink Event
Hi Gurus,
I made a little bit change to JtreeDemo, and load a html file to JEditPane, and there are some link in the html page, I would like some thing happen when user clicks on the url, so I add HyperLinkListener and event,but it seems nothing happen when I run the application. I will really appreciate If you can help me to work this out.
Thanks
John
import javax.swing.JTree;
import javax.swing.event.*;
import javax.swing.tree.DefaultMutableTreeNode;
import javax.swing.event.TreeSelectionListener;
import javax.swing.event.TreeSelectionEvent;
import javax.swing.tree.TreeSelectionModel;
import java.net.URL;
import java.io.IOException;
import javax.swing.JEditorPane;
import javax.swing.JScrollPane;
import javax.swing.JSplitPane;
import javax.swing.JFrame;
import java.awt.*;
import java.awt.event.*;
public class Example extends JFrame implements HyperlinkListener
private JEditorPane htmlPane;
private static boolean DEBUG = false;
private URL helpURL;
//Optionally play with line styles. Possible values are
//"Angled", "Horizontal", and "None" (the default).
private boolean playWithLineStyle = false;
private String lineStyle = "Angled";
public Example() {
super("example");
//Create the nodes.
DefaultMutableTreeNode top = new DefaultMutableTreeNode("example");
createNodes(top);
//Create a tree that allows one selection at a time.
final JTree tree = new JTree(top);
tree.getSelectionModel().setSelectionMode
(TreeSelectionModel.SINGLE_TREE_SELECTION);
//Listen for when the selection changes.
tree.addTreeSelectionListener(new TreeSelectionListener() {
public void valueChanged(TreeSelectionEvent e) {
DefaultMutableTreeNode node = (DefaultMutableTreeNode)
tree.getLastSelectedPathComponent();
if (node == null) return;
Object nodeInfo = node.getUserObject();
if (node.isLeaf()) {
courseInfo course = (courseInfo)nodeInfo;
displayURL(course.courseURL);
if (DEBUG) {
System.out.print(course.courseURL + ": \n ");
} else {
displayURL(helpURL);
if (DEBUG) {
System.out.println(nodeInfo.toString());
if (playWithLineStyle) {
tree.putClientProperty("JTree.lineStyle", lineStyle);
//Create the scroll pane and add the tree to it.
JScrollPane treeView = new JScrollPane(tree);
//Create the HTML viewing pane.
htmlPane = new JEditorPane();
htmlPane.setEditable(false);
initHelp();
JScrollPane htmlView = new JScrollPane(htmlPane);
//Add the scroll panes to a split pane.
JSplitPane splitPane = new JSplitPane(JSplitPane.HORIZONTAL_SPLIT);
splitPane.setTopComponent(treeView);
splitPane.setBottomComponent(htmlView);
Dimension minimumSize = new Dimension(100, 50);
htmlView.setMinimumSize(minimumSize);
treeView.setMinimumSize(minimumSize);
splitPane.setDividerLocation(100); //XXX: ignored in some releases
//of Swing. bug 4101306
//workaround for bug 4101306:
//treeView.setPreferredSize(new Dimension(100, 100));
///ttttttttttttttttttttttt
htmlPane.addHyperlinkListener(this);
//ttttttttttttttttttttttttt
splitPane.setPreferredSize(new Dimension(500, 300));
//Add the split pane to this frame.
getContentPane().add(splitPane, BorderLayout.CENTER);
private class courseInfo {
public String courseName;
public URL courseURL;
public String prefix = "file:"
+ System.getProperty("user.dir")
+ System.getProperty("file.separator");
public courseInfo(String course, String filename) {
courseName = course;
try {
courseURL = new URL(prefix + filename);
} catch (java.net.MalformedURLException exc) {
System.err.println("Attempted to create a courseInfo "
+ "with a bad URL: " + courseURL);
courseURL = null;
public String toString() {
return courseName;
//tttttttttttttttttttttttt
public void hyperlinkListener(HyperlinkEvent e)
if (e.getEventType() == HyperlinkEvent.EventType.ACTIVATED)
// do something on HL click
System.out.println("ouverture");
if (e.getEventType() == HyperlinkEvent.EventType.ENTERED)
// do something on mouse over HL
// do something on HL click
System.out.println("bbbbbbbbbbbbbbbbbbbb");
if (e.getEventType() == HyperlinkEvent.EventType.EXITED)
// do something on HL click
System.out.println("ggggggggggggggggggg");
// do something on mouse moved away from HL
public void hyperlinkUpdate(HyperlinkEvent e)
//ttttttttttttttttttttttttt
private void initHelp() {
String s = null;
try {
s = "file:"
+ System.getProperty("user.dir")
+ System.getProperty("file.separator")
+ "lesson1.html";
if (DEBUG) {
System.out.println("Help URL is " + s);
helpURL = new URL(s);
displayURL(helpURL);
} catch (Exception e) {
System.err.println("Couldn't create help URL: " + s);
private void displayURL(URL url) {
try {
htmlPane.setPage(url);
} catch (IOException e) {
System.err.println("Attempted to read a bad URL: " + url);
private void createNodes(DefaultMutableTreeNode top) {
DefaultMutableTreeNode category = null;
DefaultMutableTreeNode course = null;
category = new DefaultMutableTreeNode("Vector");
top.add(category);
//original Tutorial
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 1: Definition of Vector",
"lesson2.html"));
category.add(course);
//Tutorial Continued
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 2:",
"lesson3.html"));
category.add(course);
//JFC Swing Tutorial
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 3:",
"lesson4.html"));
category.add(course);
//Arnold/Gosling
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 4", "lesson5.html"));
category.add(course);
//FAQ
course = new DefaultMutableTreeNode(new courseInfo(
"Lesson 5: ", "lesson6.html"));
category.add(course);
//Chan/Lee
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 6: ",
"lesson6.html"));
category.add(course);
//Threads
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 7: Exercises ",
"lesson7.html"));
category.add(course);
category = new DefaultMutableTreeNode("Matrix--Plot");
top.add(category);
//VM
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 1: Definition of Matrix",
"lesson8.html"));
category.add(course);
//Language Spec
course = new DefaultMutableTreeNode(new courseInfo
("Lesson 2: Definition of Plot",
"lesson9.html"));
category.add(course);
public static void main(String[] args) {
JFrame frame = new Example();
frame.addWindowListener(new WindowAdapter() {
public void windowClosing(WindowEvent e) {
System.exit(0);
frame.pack();
frame.setVisible(true);See following, it has Hyperlinklabel and button example.
http://forum.java.sun.com/thread.jsp?forum=57&thread=328882 -
Capture Hyperlink event and set value
Hello everyone,
I have a hyperlink on a report column and when I click on the hyperlink it takes me to an URL. Now I need to capture the time the user clicked on the URL and update a DB table column. So I created a Dynamic event to update an item, but I am not able to get the hyperlink event. When I select the Event as 'Click' and 'Selection Type' as 'Item', the report column does not show up on the Item(s) LOV. Can Dynamic Actions be based only on click of page items?
If so, is there any other to capture this Hyperlink event and set value? Also, as my 'Column Link' target is 'URL', I cannot set any value for items there!
Please help,
RamyaThanks a lot Vee, that was very helpful.
I added the dummy page with 'OnLoad' page process with the PL/SQL code and my current page redirects to a new page with the new page's attributes set. Now I am able to update the timestamp on the table with the sysdate when I click on the click. However, my URL does not work. A page cannot be found error is returned. I displayed the P2_URL_ITEM on the page and it displays only until 'http', the rest of the text is cut. Is there a way I can increase the length of this page item?
As the URL value assigned to the page item did not work, I tried to hardcode the URL. Below is my page process on the load of dummy page,
BEGIN
UPDATE xxnf.XXNF_APEX_RR_REPORTS
SET last_used = SYSDATE
WHERE report_id = :P2_REPORT_ID;
sys.owa_util.redirect_url('www.google.com');
--owa_util.redirect_url(:P2_URL_ITEM);
END;
However, still the page not found error comes up. Could you please help fix both these issues?
1) P2_URL_ITEM - not having the complete URL
2) redirect_url not working.
Looking forward to any helpful pointers,
Ramya -
Hyperlink events in iCal?
Can you hyperlink events in iCal? I've been unable to do so and can find no references for it.
John KendrickI've done a bit of research on hyperlinking events in iCal since I made that post. Turns out you can but it's sufficiently awkward to not be worth it. For my purposes.
To do so, create a new event. Either in the subsequent edit button or the original, you will see a url field. You can past the url there. The problem is that it's only accessible when you click on the event, bringing up the subsequent window. I wanted something that was clickable from the face of the calendar itself.
I got to this problem because I was putting together a spring calendar of attractive events at Carnegie Hall, in NYC. I wanted to be able to hyperlink short notations about each event, such as the name of the orchestra, to a full page description of the event on Carnegie's website. That way my wife could look through the full calendar with the full references, pick her preferences the better for us to decide which to buy tickets for.
I've decided to stick with calendars in Word, which does have this ability, and are easily shared across our home network.
John Kendrick -
Unable to capture startup and shutdown event of Photoshop in automation Plugin.
Hi,
I am creating an automation plugin and I want to register some events. I have seen listener plugin sample to register event in startup and unregister event in shutdown. I have used same code in my plugin but I am unable to capture the startup nad shutdown event of Photoshop. On clicking the menu item of my plugin the calls come inside the AutoPluginMain but during the startup or shutdown of plugin, the calls does not come inside the AutoPluginMain.
I am unable to detect the cause of the problem. Can someone please giude me??
Thanks in advance.Hi Tom,
Thanks for the suggestion.
Yes, I am working on Windows. As you suggested, I compiled .rc file but the compile option for .r file was disabled. After compiling the .rc file, I again rebuild the complete project and tested my build. But still I was not able to achive the desired result.
Any other thing that I need to do to make it work?
Thanks -
I am using Snow Leopard on a MacBook. I have an iPod touch 3G. I do not use iSync it Mobile Me. When I sync my iPod through iTunes new events on my iPod do not show up on my Mac and old events do not delete. I have read help instructions that include deleting the data on the iPod. The iPod has the correct data and the Mac does not so I have not followed those instructions. I need help as the only reason I bought the Mac was to be able to sync, back up, view and print my calendar. Currently it is useless. If only Apple could have learned from the elegance of the Palm software.
Start here:
iPhone, iPad, or iPod touch: Device not recognized in iTunes for Windows -
Hi
I wonder to know what is the enterprise solution for windows and application event log management and analyzer.
I have recently research and find two application that seems to be profession ,1-manageengine eventlog analyzer, 2- Solarwinds LEM(Solarwind Log & Event Manager).
I Want to know the point of view of Microsoft expert and give me their experience and solutions.
thanks in advance.Consider MS System Center 2012.
Rgds -
What is the diffrence between sap events and application events
Hi all,
what is the diffrence between sap events and application events.Can any one tell me with examples.
regards,Hi,
Look at this,
<b>System Events (Default)</b>
The event is passed to the application server, but does not trigger the PAI. If you have registered an event handler method in your ABAP program for the event (using the SET HANDLER statement), this method is executed on the application server.
Within the event handler method, you can use the static method SET_NEW_OK_CODE of the global class CL_GUI_CFW to set a function code and trigger the PAI event yourself. After the PAI has been processed, the PBO event of the next screen is triggered.
The advantage of using this technique is that the event handler method is executed automatically and there are no conflicts with the automatic input checks associated with the screen. The disadvantage is that the contents of the screen fields are not transported to the program, which means that obsolete values could appear on the next screen. You can work around this by using the SET_NEW_OK_CODE method to trigger field transport and the PAI event after the event handler has finished.
<b>Application Events</b>
The event is passed to the application server, and triggers the PAI. The function code that you pass contains an internal identifier. You do not have to evaluate this in your ABAP program. Instead, if you want to handle the event, you must include a method call in a PAI dialog module for the static method DISPATCH of the global class CL_GUI_CFW. If you have defined an event handler method in your ABAP program for the event (using the SET HANDLER statement), the DISPATCH method calls it. After the event handler has been processed, control returns to the PAI event after the DISPATCH statement and PAI processing continues.
The advantage of this is that you can specify yourself the point at which the event is handled, and the contents of the screen fields are transported to the application server beforehand. The disadvantage is that this kind of event handling can lead to conflicts with the automatic input checks on the screen, causing events to be lost.
Hope u understood.
Thanks&Regards,
Ruthra.R -
How can i set action on UITaBar and get event from that
Hi All,
I m doing one apps in which i have to add three UITabBarItem and this is UITabBarSystemItem.
Now i cannot understand that how can i set action and get event from the?
And how can i set various views on three tab bar item.
I have to use UITabBar means i have to use UINavigationController+UITabBar
My code id
tabBar =[[UITabBar alloc] initWithFrame:CGRectMake(0,370,320,50)];
tabBar.backgroundColor =[UIColor blackColor];
UITabBarItem *search =[[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemSearch tag:0];
UITabBarItem *recents =[[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemRecents tag:1];
UITabBarItem *favorites =[[UITabBarItem alloc] initWithTabBarSystemItem:UITabBarSystemItemFavorit es tag:2];
tabBar.items =[[NSArray arrayWithObjects:search,recents,favorites, nil] retain];
tabBar.selectedItem = search;
[myView addSubview:tabBar];
[tabBar release];
I add a action:
UITabBarItem *search =[[UITabBarItem alloc] InitWithTabBarSystemItem:UITabBarSystemItemSearch tag:0 action:@selector(select:)];
So it error: Warning -no'InitWithTabBarSystemItem:tag:action:' method fount
So any can help me regarding it?Thanks RickMaddy very much.
I read and do with sample at the View Controller Programming Guide . But when run it only view TabBar with title but haven't got any TabBarItem on it. I searched a few example about TabBar and i did, but i want do a form with a button then press on button it view a form with 2 TabBarItem on TabBar and press each TabBarItem will show correlative form page 1, page 2.
UITabBarController *tabBarControl = [[[UITabBarController alloc] initWithNibName:nil bundle:nil] autorelease];
tabBarControl.title = @"Tab bar";
ViewControl1 *view1 = [[[ViewControl1 alloc] initWithNibName:@"ViewControl1" bundle:nil] autorelease];
ViewControl1 *view2 = [[[ViewControl1 alloc] initWithNibName:@"ViewControl2" bundle:nil] autorelease];
tabBarControl.viewControllers = [NSArray arrayWithObjects:view1,view2,nil];
[self.navigationController pushViewController:tabBarControl animated:YES]; -
Badi and Business event( Urgent)
Hi experts,
I am new to badi and business event 1120P. Please post how this business event exactly comes in to picture in this badi. also how to find this business event?
And also Post the logic or code. The requirement is given below . Pls Post the solution. Its very urgent.
Enhancement Summary
Two user exits are needed to determine the correct G/L Account and Cost Center on Shipment Cost documents and post the Material Group on the Accounting document. BADI_SCD_ACCTG and Business Event 1120P can be used to accommodate the new functionality.
Business Process
Specific G/L Accounts and Cost Centers have to be determined to post on the Shipment Cost document. This is needed to provide accurate management reporting capabilities on shipments for Sales Order or Stock Transfer Order. A new custom table must be created which contains the following information: Distribution, Mode of Transport, Account, Cost Center Material group. Distribution is an identifier here if this shipment originated from an SO or STO.
There are no screens involved in this enhancement.
Components
Table: ZTABLE1
Field Data Element Type Length Description
MANDT MANDT CLNT (key) 3 Client
DISTRIBUTION Z_DISTRIBUTION CHAR (key) 1 Distribution
MOT ZZDEF_MOT CHAR (key) 2 Mode of Transportation
MATKL MATKL CHAR (key) 9 Material group
SAKNR SAKNR CHAR 10 G/L Account Number
KOSTL KOSTL CHAR 10 Cost Center
This table gets updated manually by the FI team.
Values for Distribution are:
1 = Primary Distribution to Refinery
2 = Primary and Secondary Excluding refinery
All entries must be checked against SAP config and master tables
User exit BADI BADI_SCD_ACCTG will be used to determine the correct G/L Account, Cost Center and Product Group based on Distribution and Mode of Transport. This BADI gets called only when a new Shipment Cost document get created.
Once the BADI determined the new values it populates field c_vfkn-sakto with the G/L account, field c_vfkn-kostl with the Cost Center and exports the Product group to memory.
There is no field on the Shipment Cost Document to store the Product group. Therefore another mechanism must be used to get the Product Group on the accounting document.
Business Event 1120P can be used to import the Product group out of memory and put it on BSEG-MATNR. Structure BSEG_SUBST must be enhanced with field MATNR for this purpose.
Function, Rules, Exits Description of Functionality, Rules, Exits
BADI_SCD_ACCTG Business Add-In for Shipment Cost Account Assignment
Business Framework Business Event 1120P can be used to import the Product Group from memory and to populate field BSEG_SUBST-MATNR.
This event gets called from different places. It needs to be ensured that it only populates the value when it was called from BADI_SCD_ACCTG.
Custom Table A look-up Table needs to be maintained for Distribution, Mode of Transport, G/L Account, Cost Center and Material Group
Transaction code To maintain the new table
Append Structure To enhance structure BSEG_SUBST with MATNR
Business Add-In BADI_SCD_ACCTG can be used to determine the account assignments for a shipment cost item to set the G/L Account and Cost Center. All data needed to determine the new information gets provided in this BADI.
Logic:
Determine if STO or SO based on Document Category from internal table I_REFOBJ-VTRLP field VGTYP If is C then Distribution type is Sales Order (Primary and Secondary Excluding Refinery 2 ) else we need to check the receiving plant. If the receiving plant (I_REFOBJ-VTRLK field WERKS) is a refinery the Distribution type is Primary (1) else its a (Primary and Secondary Excluding Refinery 2 ). Refineries can be identified via Function Module ZPLANTCLASSIFICATION. The plant must be passed into Import Parameter IP_SAPPLANT and field INT_PLANTCHAR-ATNAM must be looked up with value SAPTYPE. If it exists and field ATWRT contains RFY, the plant is a refinery.
Product Group can be determined from the Material master through Material group field MARA-MATKL.
Mode of Transport will be passed in the BADI in VTRLK-OIC_MOT.
Select single entry from table ZTABLE1based on Distribution, Mode of Transport and Material Group. If nothing gets selected, error message No entry exists in table ZTABLE1for Distribution (distribution), MOT (MOT) & Mat. Group (material group) should be triggered.
Move ZTABLE1-SAKNR to c_vfkn-sakto and ZTABLE1-KOSTL to c_vfkn-kostl
The Material group must be exported to memory in BADI_SCD_ACCTG
The Material group must be imported from memory in Business Event BP1120P
Free Memory in Business Event BP1120P
This is VI01 Creation of Freight Cost Item screen
and also code for function module ZPLANTCLASSIFICATION below
FUNCTION zplantclassification .
""Local interface:
*" IMPORTING
*" REFERENCE(IP_SAPPLANT) LIKE AUSP-OBJEK OPTIONAL
*" REFERENCE(IP_CPSPLANT) LIKE AUSP-ATWRT OPTIONAL
*" REFERENCE(IP_SISLOC) LIKE AUSP-ATWRT OPTIONAL
*" EXPORTING
*" VALUE(EP_SAPPLANT) LIKE AUSP-OBJEK
*" VALUE(EP_CPSPLANT) LIKE AUSP-ATWRT
*" VALUE(EP_SISLOC) LIKE AUSP-ATWRT
*" VALUE(EP_OWNERSHIP) LIKE AUSP-ATWRT
*" VALUE(EP_SMISTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_SPOTREF) LIKE AUSP-ATWRT
*" VALUE(EP_SUBTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_SUPPLYREGION) LIKE AUSP-ATWRT
*" VALUE(EP_TYPE) LIKE AUSP-ATWRT
*" VALUE(EP_DISTAREA) LIKE AUSP-ATWRT
*" VALUE(EP_GEOGAREA) LIKE AUSP-ATWRT
*" VALUE(EP_HMF) LIKE AUSP-ATWRT
*" VALUE(EP_IATACODE) LIKE AUSP-ATWRT
*" VALUE(EP_IRSTCN) LIKE AUSP-ATWRT
*" VALUE(EP_OPSAREA) LIKE AUSP-ATWRT
*" VALUE(EP_PLANTSTAT) LIKE AUSP-ATWRT
*" VALUE(EP_PORTCODE) LIKE AUSP-ATWRT
*" VALUE(EP_REFAREA) LIKE AUSP-ATWRT
*" VALUE(EP_SAPTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_MFGWARRANTY) LIKE AUSP-ATWRT
*" VALUE(EP_USERTYPE) LIKE AUSP-ATWRT
*" VALUE(EP_TRMCENTER) LIKE AUSP-ATWRT
*" VALUE(EP_TRANSCENTER) LIKE AUSP-ATWRT
*" VALUE(EP_FEIN) LIKE AUSP-ATWRT
*" TABLES
*" INT_PLANTCHAR STRUCTURE ZPLANTCLASSIFICATION OPTIONAL
*" EXCEPTIONS
*" NO_OBJEK_FOUND
*" NO_CPSPLANT_FOUND
*" NO_SISLOC_FOUND
*" NO_INPUT_FOUND
*" VALID_PLANT_NO_CHARACTERISTIC
*" ONE_TO_MANY_ISSUE
*" PLANT_NOT_FOUND_ZDEF_DELPLANT
*" UNKNOWN_ERRORS
FM Name: ZPLANTCLASSIFICATION
Created By : SYUB *
Description : Function Module to retrieve plant characteristics *
The function module has two capabilities:
1. Retrieve only the necessary characteristics
2. Retrieve the whole characteristics into an internal table.
Parameter Description *
In the future, if there is a new characteristic added to the
plant classification tables, the characteristic has to be added
to the list of the export parameters and the loop statement.
TABLES: ausp, cabn, ksml, zdef_delplant.
DATA: ws_objek LIKE ausp-objek,
ws_countchar TYPE i,
ws_countplant TYPE i.
*Internal table for SAP plant
DATA: BEGIN OF int_plant OCCURS 0,
plant LIKE ausp-objek,
END OF int_plant.
*sap plant code is the input parameter.Move objek, atnam, and atwrt to
*internal table PLANTCHAR using inner join of AUSP, CABN, and KSML to
*synch up the internal characteristic numbers throughout the 3 tables.
IF NOT ip_sapplant IS INITIAL.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = ip_sapplant
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
*Checking the existence of ip_sapplant in the table, if it doesn't
*exist, raise the exception else if it exists, check if it has
*characteristic values.
IF sy-subrc NE 0.
RAISE no_objek_found.
ELSE.
DESCRIBE TABLE int_plantchar LINES ws_countchar.
IF ws_countchar LT 2.
RAISE valid_plant_no_characteristic.
ENDIF.
ENDIF.
*cps plant code is the input parameter. Move objek from table AUSP to
*ws_objek using inner join of CABN and AUSP to match up the internal
*characteristic numbers from the 2 tables.
ELSEIF NOT ip_cpsplant IS INITIAL.
SELECT ausp~objek
INTO TABLE int_plant
FROM ausp AS ausp
INNER JOIN cabn AS cabn
ON cabn~atnam = 'OLDCODE'
WHERE auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'
AND ausp~atwrt = ip_cpsplant.
*Checking the existence of ip_cpsplant in the table
IF sy-subrc EQ 0.
*Counting the number of SAP plants in the internal table int_plant
DESCRIBE TABLE int_plant LINES ws_countplant.
*Moving the values of objek, atnam, and atwrt to PLANTCHAR using objek
*from ws_objek.
IF ws_countplant EQ 1.
LOOP AT int_plant.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = int_plant-plant
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
ENDLOOP.
*If there more than one SAP Plants, then raise an exception.
ELSEIF ws_countplant GT 1.
RAISE one_to_many_issue.
ENDIF.
ELSE.
SELECT SINGLE werks FROM zdef_delplant
INTO ws_objek
WHERE cpsloc = ip_cpsplant.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = ws_objek
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
if sy-subrc ne 0.
raise plant_not_found_zdef_delplant.
endif.
ENDIF.
*cps plant code is the input parameter. Move objek from table AUSP to
*ws_objek using inner join of CABN and AUSP to match up the internal
*characteristic numbers from the 2 tables.
ELSEIF NOT ip_sisloc IS INITIAL.
SELECT ausp~objek
INTO TABLE int_plant
FROM ausp AS ausp
INNER JOIN cabn AS cabn
ON cabn~atnam = 'SISLOC'
WHERE auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'
AND ausp~atwrt = ip_sisloc.
*Checking the existence of ip_sapplant in the table
IF sy-subrc EQ 0.
DESCRIBE TABLE int_plant LINES ws_countplant.
*Moving the values of objek, atnam, and atwrt to PLANTCHAR using objek
*from ws_objek.
IF ws_countplant EQ 1.
LOOP AT int_plant.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = int_plant-plant
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
ENDLOOP.
*If there more than one SAP Plants, then raise an exception.
ELSEIF ws_countplant GT 1.
RAISE one_to_many_issue.
ENDIF.
ELSE.
SELECT SINGLE werks FROM zdef_delplant
INTO ws_objek
WHERE sisloc = ip_sisloc.
SELECT auspobjek cabnatnam ausp~atwrt
INTO CORRESPONDING FIELDS OF TABLE int_plantchar
FROM ksml AS ksml
INNER JOIN cabn AS cabn
ON cabnatinn = ksmlimerk
INNER JOIN ausp AS ausp
ON ausp~objek = ws_objek
AND auspatinn = cabnatinn
AND ausp~mafid = 'O'
AND ausp~klart = 'Z01'.
if sy-subrc ne 0.
raise plant_not_found_zdef_delplant.
endif.
ENDIF.
ELSE.
*Checking if there is an input parameter entered.
RAISE no_input_found.
ENDIF.
Modified 7/30 by RFOR to validate SAP plant is in plant master
data: wa_t001w like t001w.
read table int_plantchar.
SELECT SINGLE * from t001w into wa_t001w where
werks = int_plantchar-objek.
if sy-subrc ne 0.
raise NO_OBJEK_FOUND.
endif.
*Moving all the characteristic values to the export parameters
LOOP AT int_plantchar.
MOVE int_plantchar-objek TO ep_sapplant.
CASE int_plantchar-atnam.
WHEN 'OLDCODE'.
MOVE int_plantchar-atwrt TO ep_cpsplant.
WHEN 'SISLOC'.
MOVE int_plantchar-atwrt TO ep_sisloc.
WHEN 'OWNERSHIP'.
MOVE int_plantchar-atwrt TO ep_ownership.
WHEN 'SMISTYPE'.
MOVE int_plantchar-atwrt TO ep_smistype.
WHEN 'SPOTREF'.
MOVE int_plantchar-atwrt TO ep_spotref.
WHEN 'SUBTYPE'.
MOVE int_plantchar-atwrt TO ep_subtype.
WHEN 'SUPPLYREGION'.
MOVE int_plantchar-atwrt TO ep_supplyregion.
WHEN 'TYPE'.
MOVE int_plantchar-atwrt TO ep_type.
WHEN 'DISTAREA'.
MOVE int_plantchar-atwrt TO ep_distarea.
WHEN 'GEOGAREA'.
MOVE int_plantchar-atwrt TO ep_geogarea.
WHEN 'HMF'.
MOVE int_plantchar-atwrt TO ep_hmf.
WHEN 'IATACODE'.
MOVE int_plantchar-atwrt TO ep_iatacode.
WHEN 'IRSTCN'.
MOVE int_plantchar-atwrt TO ep_irstcn.
WHEN 'OPSAREA'.
MOVE int_plantchar-atwrt TO ep_opsarea.
WHEN 'PLANTSTAT'.
MOVE int_plantchar-atwrt TO ep_plantstat.
WHEN 'PORTCODE'.
MOVE int_plantchar-atwrt TO ep_portcode.
WHEN 'REFAREA'.
MOVE int_plantchar-atwrt TO ep_refarea.
WHEN 'SAPTYPE'.
MOVE int_plantchar-atwrt TO ep_saptype.
WHEN 'MFG_WARRANTY'.
MOVE int_plantchar-atwrt TO ep_mfgwarranty.
WHEN 'USER_TYPE'.
MOVE int_plantchar-atwrt TO ep_usertype.
WHEN 'TERMINALCENTER'.
MOVE int_plantchar-atwrt TO ep_trmcenter.
WHEN 'TRANSPORTATIONCENTER'.
MOVE int_plantchar-atwrt TO ep_transcenter.
when 'FEIN'.
move int_plantchar-atwrt to ep_fein.
ENDCASE.
ENDLOOP.
ENDFUNCTION.
Pls help me out from this problem its very urgent.
Thankshi SK ,
process like this .
in BADI
method.
1.Here u have to put ur logic based on the Requirement.
2.then u have to call BTE like this
<b>call function 'OPEN_FI_PERFORM_00001020_E'
tables
t_bseg = xbseg
t_bkpf = xbkpf.</b>
3.Update Ztables.
endmethod.
this is sample logic only.First get logic of TS then u will come to know how to do?
regards
prabhu -
Newly entered contacts and calendar events entered on my IPhone 5s are not syncing to google.
Facts that may be pertinent:
- I switched from the iPhone 4 to the iPhone 5s and did the easy option of having it automatically set up like my previous phone, so I did not change any part of the setup. It is possible that it stopped syncing at that time, based on which contacts have synced and which haven't.
- My gmail account is set up as Exchange, with Mail, Contacts, and Calendars set to sync.
- Server: m.google.com, Use SSl is on, S/MIME is off (I don't actually know what these are, but maybe they matter?)
- Fetch New Data / Gmail account is set to Push
- Contacts and Calendar Default Account is Gmail
- In the Contacts app under Groups I have only GMAIL checked.
I've read that Google recommends CardDAV, which I gather is not the same as Exchange?
I'm afraid to delete anything and start over, for fear of losing my contacts.
Is there a difference between the gmail account I set up and what the Contacts app calls GMAIL?
If there is anything I should communicate about how things are set up on the Google end, let me know.
Thanks in advance for help!Hello Marsden,
Try this...
Go to the isync program on your Mac.
Go to Preferences in the main menu
Hit Reset Sync History
I'm pretty sure this is how I fixed it... so far so good.
Let me know if that works for you! -
HT1296 When syncing to ipod and ipad i get duplicate contacts and calendar events
Probllems syncing contacts and calendare events. I get dups and triplicates
How are you syncing? Are you syncing through itunes, icloud or both? Most issues come from syncing the same data/content from more than one source.
-
Why don't all my contacts and calendar events on my iMac (version 10.7.4) stream onto iCloud? For instance, there are 470 entries in my address book but only 270 on iCloud. And not all my appointments in iCal are transferred either.
I have the same problem transfering Address book on iMac to contacts on iPhone (old version 3G - on iCloud). this is a hard wired connectionMight you have 200 entries in On My Mac groups and some of your appointments in On My Mac calendars?
-
Why can´t I see contacts and calendar events already registered in my iPhone, in my Mac Pro ? I already actualize LION OSX and selected these items in the adjustments menu of the icloud. I could do it just once, after I installed Lion OSX, but up to the moment it does not updates.
Assuming you activated iCloud, try going to Settings>iCloud and make sure Calendars and Contacts are set to ON.
-
I've lost the contacts and calendar events (& email) from my 3GS after setting up iCloud with iPad3 and PC Outlook. Any solutions?
I tried to re-synch it with the PC iTunes, but no luck, even when re-checking the boxes for Outlook...I should mention that i have NOT upgraded to iOS 5 on the 3GS and don't want to. Therefore, no iCloud on the phone.
Maybe you are looking for
-
After what seems to be a normal upgrade to the new Mountain Lion OS X on my early 2008, 24" iMac. My iMac counted down to restart but did not turn all the way off. At the end of the count down the screen went white with a small file folder flashing o
-
Do you know where Cisco MSE Demo ova-file is ?
Hello Expert, I'm looking for Demo File for Cisco MSE. I checked other thread about same subject. According to thread, the demo file is able to get from site. -> http://wnbu-press.cisco.com/blog/2013/03/16/cmx-demo-kit-on-a-usb-stick-guide/ But, Now
-
If I change the rotation property of a panel, the title will disappear. Although I use the embed font file. How should I do ? <mx:Panel title="Title" width="300" height="500" id="panel" click="panel.rotation+=2;"/> CSS FILE @font-face{ src: url("msyh
-
"Use Local Fonts" setting seems to switch while viewing PDF
I open up a pdf with no embedded fonts, and the text looks fine. Then after a few seconds of paging through the document, all of the sudden the next page is shown with adobe-substituted fonts like "Adobe Serif MM" instead of "ArialNarrow,BoldItalic".
-
No option of hotspot in my iPad 4?.
No option of hotspot in my iPad 4?.