Choosing custom control implementation
Hello,
Is there a way to specify the custom controls' implementation to be used (eg. specifying which jar to use, at server startup)?
Since the controls variables point to an interface, I was wondering if there is any mechanism to specify which control implementation to use. So I could plug the control's - dummy, test or production - implementation without changing the clients of my controls.
Thanks for help,
Yves
Hi,
For report,, include the following statement
CALL SCREEN 100.
Double click on number 100 , Then CLick on Layout ..and follow the same steps as Dialog programming i.e. Drag & drop the Custom Control, assign a name to it & activate
Best regards,
Prashant
Similar Messages
-
Using custom control in Infopath 2013 to populate a Custom List in Sharepoint
Is there any way to add custom controls, such as InkCapture, to sharepoint list forms? My specific application requires me to use a sharepoint Custom List so I developed a form in Infopath to serve as the data entry point. Unfortunately there is no option
to add or use custom controls when editing my form in Infopath.
When I create a Form Library all my custom controls are available to use.
Any ideas?
Much Appreciated!Hi,
InfoPath is only a forms editing tool and does not provide for grid editing or other expected features like adding any custom control, you can design a template
part to reuse in multiple form template here you can create your own custom control by using existing control in InfoPath and you have facility to write code to implement any business logic that’s called template part and you can add this template part in
your any InfoPath form over and over. Here is the link for creating the custom template part in InfoPath.
https://support.office.com/en-za/article/Design-a-template-part-to-reuse-in-multiple-form-templates-cfcb14e0-059b-4b0e-a200-3faa409f52f0
Here is the list of features that you can use in List form, InfoPath form and using SharePoint designer you can choose as per your nee.
http://go.limeleap.com/community/bid/300409/SharePoint-Forms-Comparison-Lists-vs-SP-Designer-vs-InfoPath
Krishana Kumar http://www.mosstechnet-kk.com
Please mark the replies and Proposed as answer if they help and solve your issue -
I Just started using LV touch Panel module with an NI TPC-2106.
I have two differenct problems:
1) I was planning on using the "Meter" control quite a bit. I can set up the meter exactly how I like on the host PC, but on the touch Panel computer it seems to ignore my adjustments, mainly the start and end of the scale - i.e. I would like control to run from 0 to 360 with 0 straight up, using the entire circle. However, on the Touch panel computer it always puts 0 at about 7 o'clock and 360 at about 5 o'clock. I have also tried adding markers to no avail.
2) I am communicating with a compact fieldpoint controller. I can creat a shared variable that is a simple double with no problems. However, I have some shared variables that use a custom control for the variable type - bascially a cluster with a couble doubles, a time stamp, and an enumeration. It lets me drag the shared variable into my diagram, but it seems to ignore it when I run it.Ipshita_C,
- I am using LV 8.6.1f1and LV Touch Panel 8.6.1.
- I have attached a simplified VI that shows how I want to use the meter. Notice that the placement of the endpoitns does not work correctly on the touch panel, and that it ignores the arbitrary markers that I placed.
- I also have included an XY graph control that displays on the TPC with margins around the graph area that I removed from the graph control.
- For the shared variable, it appears to be an issue related to the touch panel, not fieldpoint. I found another thread in this forum that mentioned that clusters containing Enumerations do not work in shared variables on the touch panel. I changed the enumeration to an integer and it now works fine.
In general, there seem to be a disappointing number of limitations in the touch panel implementation. My biggest concern is that I have not found any documentation from NI that lists these limitations. I seem to have to try things out and see what works and what does not work. Can you point me to a comprehensive list of touch panel modules limitations?
Attachments:
test 2.vi 10 KB -
How to have custom control in DataGridView display object's value?
I have a sample project located
here
The project has a main form `Form1` where the user can enter customers in a datagridview. The `CustomerType` column is a custom control and when the user clicks the button, a search form `Form2` pops up.
The search form is populated with a list of type `CustomerType`. The user can select a record by double-clicking on the row, and this object should be set in the custom control. The `DataGridView` should then display the `Description` property but in the background
each cell should hold the value (ie. the `CustomerType` instance).
The relevant code is located in the following classes:
The column class:
public class DataGridViewCustomerTypeColumn : DataGridViewColumn
public DataGridViewCustomerTypeColumn()
: base(new CustomerTypeCell())
public override DataGridViewCell CellTemplate
get { return base.CellTemplate; }
set
if (value != null && !value.GetType().IsAssignableFrom(typeof(CustomerTypeCell)))
throw new InvalidCastException("Should be CustomerTypeCell.");
base.CellTemplate = value;
The cell class:
public class CustomerTypeCell : DataGridViewTextBoxCell
public CustomerTypeCell()
: base()
public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle)
base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle);
CustomerTypeSearch ctl = DataGridView.EditingControl as CustomerTypeSearch;
if (this.Value == null)
ctl.Value = (CustomerType)this.DefaultNewRowValue;
else
ctl.Value = (CustomerType)this.Value;
public override Type EditType
get { return typeof(CustomerTypeSearch); }
public override Type ValueType
get { return typeof(CustomerType); }
public override object DefaultNewRowValue
get { return null; }
And the custom control:
public partial class CustomerTypeSearch : UserControl, IDataGridViewEditingControl
private DataGridView dataGridView;
private int rowIndex;
private bool valueChanged = false;
private CustomerType value;
public CustomerTypeSearch()
InitializeComponent();
public CustomerType Value
get { return this.value; }
set
this.value = value;
if (value != null)
textBoxSearch.Text = value.Description;
else
textBoxSearch.Clear();
private void buttonSearch_Click(object sender, EventArgs e)
Form2 f = new Form2();
DialogResult dr = f.ShowDialog(this);
if (dr == DialogResult.OK)
Value = f.SelectedValue;
#region IDataGridViewEditingControl implementation
public object EditingControlFormattedValue
get
if (this.value != null)
return this.value.Description;
else
return null;
set
if (this.value != null)
this.value.Description = (string)value;
public object GetEditingControlFormattedValue(DataGridViewDataErrorContexts context)
return EditingControlFormattedValue;
public void ApplyCellStyleToEditingControl(DataGridViewCellStyle dataGridViewCellStyle)
this.BorderStyle = BorderStyle.None;
this.Font = dataGridViewCellStyle.Font;
public int EditingControlRowIndex
get { return rowIndex; }
set { rowIndex = value; }
public bool EditingControlWantsInputKey(Keys key, bool dataGridViewWantsInputKey)
return false;
public void PrepareEditingControlForEdit(bool selectAll)
//No preparation needs to be done
public bool RepositionEditingControlOnValueChange
get { return false; }
public DataGridView EditingControlDataGridView
get { return dataGridView; }
set { dataGridView = value; }
public bool EditingControlValueChanged
get { return valueChanged; }
set { valueChanged = value; }
public Cursor EditingPanelCursor
get { return base.Cursor; }
#endregion
private void CustomerTypeSearch_Resize(object sender, EventArgs e)
buttonSearch.Left = this.Width - buttonSearch.Width;
textBoxSearch.Width = buttonSearch.Left;
However, the `DataGridView` is not displaying the text and it also is not keeping the `CustomerType` value for each cell.
What am I missing?
Marketplace: [url=http://tinyurl.com/75gc58b]Itza[/url] - Review: [url=http://tinyurl.com/ctdz422]Itza Update[/url]Hello,
1. To display the text, we need to override the ToString method for CustomerType
public class CustomerType
public int Id { get; set; }
public string Description { get; set; }
public CustomerType(int id, string description)
this.Id = id;
this.Description = description;
public override string ToString()
return this.Description.ToString();
2. To get the cell's value changed, we could pass the cell instance to that editing control and get its value changed with the following way.
public partial class CustomerTypeSearch : UserControl, IDataGridViewEditingControl
private DataGridView dataGridView;
private int rowIndex;
private bool valueChanged = false;
private CustomerTypeCell currentCell = null;
public CustomerTypeCell OwnerCell
get { return currentCell; }
set
currentCell = null;
currentCell = value;
public CustomerTypeSearch()
InitializeComponent();
private void buttonSearch_Click(object sender, EventArgs e)
Form2 f = new Form2();
DialogResult dr = f.ShowDialog(this);
if (dr == DialogResult.OK)
currentCell.Value = f.SelectedValue;
this.textBoxSearch.Text = f.SelectedValue.Description;
#region IDataGridViewEditingControl implementation
public object EditingControlFormattedValue
get
if (this.currentCell.Value != null)
return (this.currentCell.Value as CustomerType).Description;
else
return null;
set
if (this.currentCell != null)
(this.currentCell.Value as CustomerType).Description = (string)value;
public object GetEditingControlFormattedValue(DataGridViewDataErrorContexts context)
return EditingControlFormattedValue;
public void ApplyCellStyleToEditingControl(DataGridViewCellStyle dataGridViewCellStyle)
this.BorderStyle = BorderStyle.None;
this.Font = dataGridViewCellStyle.Font;
public int EditingControlRowIndex
get { return rowIndex; }
set { rowIndex = value; }
public bool EditingControlWantsInputKey(Keys key, bool dataGridViewWantsInputKey)
return false;
public void PrepareEditingControlForEdit(bool selectAll)
//No preparation needs to be done
public bool RepositionEditingControlOnValueChange
get { return false; }
public DataGridView EditingControlDataGridView
get { return dataGridView; }
set { dataGridView = value; }
public bool EditingControlValueChanged
get { return valueChanged; }
set { valueChanged = value; }
public Cursor EditingPanelCursor
get { return base.Cursor; }
#endregion
private void CustomerTypeSearch_Resize(object sender, EventArgs e)
buttonSearch.Left = this.Width - buttonSearch.Width;
textBoxSearch.Width = buttonSearch.Left;
Cell:
public class CustomerTypeCell : DataGridViewTextBoxCell
public CustomerTypeCell()
: base()
public override void InitializeEditingControl(int rowIndex, object initialFormattedValue, DataGridViewCellStyle dataGridViewCellStyle)
base.InitializeEditingControl(rowIndex, initialFormattedValue, dataGridViewCellStyle);
CustomerTypeSearch ctl = DataGridView.EditingControl as CustomerTypeSearch;
ctl.OwnerCell = this;
public override Type EditType
get { return typeof(CustomerTypeSearch); }
public override Type ValueType
get { return typeof(CustomerType); }
public override object DefaultNewRowValue
get { return null; }
Result:
Regards,
Carl
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey. -
Problem with custom control and focus
I've a problem with the focus in a custom control that contains a TextField and some custom nodes.
If i create a form with some of these custom controls i'm not able to navigate through these fields by using the TAB key.
I've implemented a KeyEvent listener on the custom control and was able to grab the focus and forward it to the embedded TextField by calling requestFocus() on the TextField but the problem is that the TextField won't get rid of the focus anymore. Means if i press TAB the first embedded TextField will get the focus, after pressing TAB again the embedded TextField in the next custom control will get the focus AND the former focused TextField still got the focus!?
So i'm not able to remove the focus from an embeded TextField.
Any idea how to do this ?Here you go, it contains the control, skin and behavior of the custom control, the css file and a test file that shows the problem...
control:
import javafx.scene.control.Control;
import javafx.scene.control.TextField;
public class TestInput extends Control {
private static final String DEFAULT_STYLE_CLASS = "test-input";
private TextField textField;
private int id;
public TestInput(final int ID) {
super();
id = ID;
textField = new TextField();
init();
private void init() {
getStyleClass().add(DEFAULT_STYLE_CLASS);
public TextField getTextField() {
return textField;
@Override protected String getUserAgentStylesheet() {
return getClass().getResource("testinput.css").toExternalForm();
@Override public String toString() {
return "TestInput" + id + ": " + super.toString();
}skin:
import com.sun.javafx.scene.control.skin.SkinBase;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.event.EventHandler;
import javafx.scene.control.TextField;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
public class TestInputSkin extends SkinBase<TestInput, TestInputBehavior> {
private TestInput control;
private TextField textField;
private boolean initialized;
public TestInputSkin(final TestInput CONTROL) {
super(CONTROL, new TestInputBehavior(CONTROL));
control = CONTROL;
textField = control.getTextField();
initialized = false;
init();
private void init() {
initialized = true;
paint();
public final void paint() {
if (!initialized) {
init();
getChildren().clear();
getChildren().addAll(textField);
@Override public final TestInput getSkinnable() {
return control;
@Override public final void dispose() {
control = null;
}behavior:
import com.sun.javafx.scene.control.behavior.BehaviorBase;
import javafx.beans.value.ChangeListener;
import javafx.beans.value.ObservableValue;
import javafx.event.EventHandler;
import javafx.scene.input.KeyCode;
import javafx.scene.input.KeyEvent;
public class TestInputBehavior extends BehaviorBase<TestInput> {
private TestInput control;
public TestInputBehavior(final TestInput CONTROL) {
super(CONTROL);
control = CONTROL;
control.getTextField().addEventFilter(KeyEvent.KEY_PRESSED, new EventHandler<KeyEvent>() {
@Override public void handle(final KeyEvent EVENT) {
if (KeyEvent.KEY_PRESSED.equals(EVENT.getEventType())) {
keyPressed(EVENT);
control.focusedProperty().addListener(new ChangeListener<Boolean>() {
@Override public void changed(ObservableValue<? extends Boolean> ov, Boolean wasFocused, Boolean isFocused) {
if (isFocused) { isFocused(); } else { lostFocus(); }
public void isFocused() {
System.out.println(control.toString() + " got focus");
control.getTextField().requestFocus();
public void lostFocus() {
System.out.println(control.toString() + " lost focus");
public void keyPressed(KeyEvent EVENT) {
if (KeyCode.TAB.equals(EVENT.getCode())) {
control.getScene().getFocusOwner().requestFocus();
}the css file:
.test-input {
-fx-skin: "TestInputSkin";
}and finally the test app:
import javafx.application.Application;
import javafx.scene.Scene;
import javafx.scene.control.TextField;
import javafx.scene.layout.GridPane;
import javafx.stage.Stage;
public class Test extends Application {
TestInput input1;
TestInput input2;
TestInput input3;
TextField input4;
TextField input5;
TextField input6;
Scene scene;
@Override public void start(final Stage STAGE) {
setupStage(STAGE, setupScene());
private Scene setupScene() {
input1 = new TestInput(1);
input2 = new TestInput(2);
input3 = new TestInput(3);
input4 = new TextField();
input5 = new TextField();
input6 = new TextField();
GridPane pane = new GridPane();
pane.add(input1, 1, 1);
pane.add(input2, 1, 2);
pane.add(input3, 1, 3);
pane.add(input4, 2, 1);
pane.add(input5, 2, 2);
pane.add(input6, 2, 3);
scene = new Scene(pane);
return scene;
private void setupStage(final Stage STAGE, final Scene SCENE) {
STAGE.setTitle("Test");
STAGE.setScene(SCENE);
STAGE.show();
public static void main(String[] args) {
launch(args);
The test app shows three custom controls on the left column and three standard textfields on the right column. If you press TAB you will see what i mean... -
In custom control , I wnt to save the layout with variant -
Hi,
In custom control , I want to save the layout using variant and i want to choose the layout from the variant
Plz give me the details.
Rerards,
RaniHello Rani
I assume you have an ALV grid displayed within a custom control. For this ALV grid you want to be able to save layouts.
Assuming that you are using class CL_GUI_ALV_GRID you have set the following IMPORTING parameters when calling method go_grid->set_table_for_first_display:
" Fill variant parameter with following values:
gs_variant-report = syst-repid.
gs_variant-handle = 'GRID'. " 4-digit handle; required if you have multiple ALV grids
- I_SAVE = 'A' " allows saving of user-specific and global layouts
- IS_VARIANT = gs_variant
Regards,
Uwe -
I'm trying to create a fancy Custom Control for processing Cell Counter images. I want a Control that lets me select two image types, Fluorescent or DAB, and if I choose Fluorescent, will let me pick Red, Green, or Blue.
I created two Radio Button controls, one for Fluorescent/DAB, one for RGB, that look like this:
I was hoping to "embed" the RGB control inside the Image Type control, yet have them retain their properties (a 2-element and 3-element Dialog Box). When I did the simple drag-and-drop of RGB onto Image Type, it acted as though I added elements to a cluster, and I had a 5-element Dialog Box, not what I wanted.
So I got clever and dragged Image Type on top of RGB. Of course, if Image Type is in front, you don't see RGB. However, if RGB is in front, you see both, but with ugly shadows around RGB (I made its label invisible).
Anyone have an idea how I can Have my Cake and Eat It, Too? Specifically, how can I get rid of the shadow that the RGB control casts on the Image Type control?
Here are the controls, themselves, as snippets:
Bob Schor
Solved!
Go to Solution.Duh ... Thanks, Lynn! Here is the result:
Bob Schor -
CUSTOM CONTROL ( long text )
Hi,
I have to implement a custom control in a dynpros of a Module Pool.
The object must have the following functions:
-read data from a field of a transaction.
-edit over new data.
-save this data, that are saved in a field of a transaction, the CJ20N. (PS MODULE)
Anyone have a code that I can use?Hi,
Search with the key word "[Custom Control|Custom Container in module pool program]" you will get many threads related to this.
Thanks,
Sri. -
Data Binding for Custom Controls?
Hello,
I'm a little bit confused of how to use databinding for custom controls.
I know i can bind a property, as seen here http://help.sap.com/saphelp_uiaddon10/helpdata/en/91/f0f3cd6f4d1014b6dd926db0e91070/content.htm, but how can I map whole arrays?
My problem is the following:
I want to create a custom table control in SAPUI5 (as the default one doesn't provide the neccessary options and properties I need), but I can't seem to find an example how to bind "rows".
There has to be a way to do this properly. All I can think of now, and implemented, is, passing the name of the variable in the model...
var x = new my.controls.complex.table({data: "/status"});
var row1 = new my.controls.complex.columnHeaderRow();
row1.addColumn(new my.controls.complex.column({text: "", rowspan: "2", colspan: "1", content: "FIRST_COL"}));
x.addColumnsRow(row1);
x.placeAt("content");
...my JSON/model looks like:
{ "status": [ {"FIRST_COL": "a" , ...}, {"FIRST_COL": "b", ... }, ... ], ... }
(which should translate into /status/0/FIRST_COL, /status/1/FIRST_COL, ... AFAIK)
... and then I use this variable name by getting the application-wide model and use the variable passed as key for the model... (please note, this code is just a snippet)
var sapCore = sap.ui.getCore();
if (sapCore !== undefined) {
var model = sapCore.getModel().getObject();
if (model === undefined || model == [] || model == null){ } else {
$.each(model, function(idx, item){
$.each(oControl.getColumnsRows(), function(idx, item2) {
$.each(item2.getColumns(), function(idx, item3){
var content = item3.getContent();
if (content !== undefined && content != ""){
outpLine = outpLine + "<td>" + model[idx][content] + "</td>";
...which still leaves me with the problem of to get an event to react to re-render on changes within the data model, as well as when there would be just an control-specific model, or just a sub-node within a model etc.
So my question is:
Is there a way/best practice to define data binding in a custom control and have a way to react on it, and how to react on data changes within a custom control?
Thanks & KR
ChrisI create a entirely new control, from sap.ui.core.Control.
sap.ui.core.Control.extend("my.controls.complex.table",{... });
I did define a aggregation...
aggregations : { columnsRows: {type : "my.controls.complex.columnRow", multiple : true, visibility: "public"} },
...yet I'm still unclear how I work with this aggregation and databinding. I know we can use the bindAggreation functionallity, but since the aggregation is a object (my.control.complex.columnRow) I don't know how my JSON model should be able to bind to that aggregation (as well as how would one be able to cascade a aggregation like this down futher? For example if there is an aggregation in the object of my aggregation?), plus it still doesn't solve my problem of how I can react (for example redraw) on model changes.
Thanks in advance,
Chris -
TOP of PAGE using ABAP oo with single CUSTOM CONTROL
Can anybody please tell me how to handle TOP_OF_PAGE using ABAP OBJECTS with a SINGLE CUSTOM CONTROL and not with SPLIT CONTAINER(i.e. using single CL_GUI_CUSTOM_CONTAINER and single grid CL_GUI_ALV_GRID ). Is it possible if so Please help me out?
Hi Ravi,
Here is my code. i didn't handle the top_of_page event yet but created a method to handle.
REPORT ZSATEESH_ALV_CONTAINER MESSAGE-ID ZZ
LINE-SIZE 150 NO STANDARD PAGE HEADING.
PROGRAM id : ZSATEESH_ALV_CONTAINER *
Title : Sales document report *
Author : Sateesh *
Date : *
CR# : *
Dev Initiative :
Description :ALV GRID/LIST Report which displays the sales
document header data using ABAP Objects.
Modification Log
Corr. no date programmer description
TYPES Declaration
*--Type for the Header Sales data
TYPES: BEGIN OF TY_VBAK ,
INDICAT LIKE ICON-ID, " Icon
VBELN LIKE VBAK-VBELN, " Sales Document
AUDAT LIKE VBAK-AUDAT, " Document date
VBTYP LIKE VBAK-VBTYP, " SD document category
AUART LIKE VBAK-AUART, " Sales Document Type
AUGRU LIKE VBAK-AUGRU, " Order reason
NETWR LIKE VBAK-NETWR, " Net Value
WAERK LIKE VBAK-WAERK, " SD document currency
END OF TY_VBAK.
DATA Declaration
*--Tableto hold the header sales data
DATA: TB_VBAK TYPE STANDARD TABLE OF TY_VBAK.
*--Table to hold the Icons
DATA: BEGIN OF TB_ICON OCCURS 0,
ID TYPE ICON-ID, " Icon
NAME TYPE ICON-NAME, " Name of an Icon
END OF TB_ICON.
*--Declaration of ALV Grid Tables
DATA: TB_FDCAT TYPE LVC_T_FCAT, " Fieldcatalog
TB_SORT TYPE LVC_T_SORT. " Sorting
DATA: OK_CODE LIKE SY-UCOMM. " sy-ucomm
*--Reference variables for container and grid control.
DATA: CUSTOM_CONTAINER TYPE REF TO CL_GUI_CUSTOM_CONTAINER,
" Container reference
OBJ_ALV_GRID TYPE REF TO CL_GUI_ALV_GRID.
" Alv Grid reference
S T R U C T U R E S
DATA: X_FDCAT TYPE LVC_S_FCAT, " Fieldcatalog
X_LAYOUT TYPE LVC_S_LAYO, " layout
X_SORT TYPE LVC_S_SORT, " Sorting
X_VBAK TYPE TY_VBAK, " sales header stucture
X_ICON LIKE TB_ICON. " icons structure
C O N S T A N T S
*--Declaration of Constants
CONSTANTS :
C_GREEN(40) TYPE C VALUE 'ICON_GREEN_LIGHT',
C_RED(40) TYPE C VALUE 'ICON_RED_LIGHT',
C_YELLOW(40) TYPE C VALUE 'ICON_YELLOW_LIGHT',
C_X TYPE C VALUE 'X'. " Flag
SELECTION SCREEN
*--Block 1.
SELECTION-SCREEN : BEGIN OF BLOCK B1 WITH FRAME TITLE TEXT-001.
PARAMETER: P_AUDAT LIKE VBAK-AUDAT
DEFAULT '20050101'(003). " doc date.
SELECTION-SCREEN: END OF BLOCK B1.
*--bLOCK 2.
SELECTION-SCREEN : BEGIN OF BLOCK B2 WITH FRAME TITLE TEXT-002.
PARAMETER :P_ALVDIS AS CHECKBOX. " For List/Grid
SELECTION-SCREEN : END OF BLOCK B2.
Class LC_VBAK definition
CLASS LC_VBAK DEFINITION.
PUBLIC SECTION.
METHODS: VBAK_POPULATE, " sales header population
ICON_POPULATE, " Icons population
FINAL_POPULATE, " Final ALV population
DISPLAY, " Displaying ALV
TOP_OF_PAGE FOR EVENT TOP_OF_PAGE OF CL_GUI_ALV_GRID
IMPORTING E_DYNDOC_ID.
ENDCLASS. "LC_VBAK DEFINITION
Class LC_VBAK IMPLEMENTATION
CLASS LC_VBAK IMPLEMENTATION.
METHOD VBAK_POPULATE.
*-- selecting from VBAK
SELECT VBELN
AUDAT
VBTYP
AUART
AUGRU
NETWR
WAERK
INTO CORRESPONDING FIELDS OF TABLE TB_VBAK
FROM VBAK
WHERE AUDAT > P_AUDAT AND
NETWR > 0.
IF SY-SUBRC <> 0.
SORT TB_VBAK BY AUART VBTYP WAERK .
ENDIF.
ENDMETHOD . "VBAK_POPULATE
METHOD ICON_POPULATE.
*--selecting from ICON table
SELECT ID
NAME
INTO TABLE TB_ICON
FROM ICON.
IF SY-SUBRC = 0.
SORT TB_ICON BY NAME .
ENDIF.
ENDMETHOD . "ICON_POPULATE
METHOD FINAL_POPULATE.
*--looping through VBAK table into the work area
LOOP AT TB_VBAK INTO X_VBAK .
IF X_VBAK-NETWR <= 10.
*--Reading the ICON table into work area comparing field NAME
READ TABLE TB_ICON INTO X_ICON WITH KEY NAME = C_GREEN
BINARY SEARCH.
IF SY-SUBRC = 0.
X_VBAK-INDICAT = X_ICON-ID.
*--modifying the TB_VBAK table
MODIFY TB_VBAK FROM X_VBAK.
ENDIF.
ELSEIF X_VBAK-NETWR > 10 AND X_VBAK-NETWR < 100.
*--Reading the ICON table into work area comparing field NAME
READ TABLE TB_ICON INTO X_ICON WITH KEY NAME = C_YELLOW
BINARY SEARCH.
IF SY-SUBRC = 0.
X_VBAK-INDICAT = X_ICON-ID.
*--modifying the TB_VBAK table
MODIFY TB_VBAK FROM X_VBAK.
ENDIF.
ELSEIF X_VBAK-NETWR >= 100.
*--Reading the ICON table into work area comparing field NAME
READ TABLE TB_ICON INTO X_ICON WITH KEY NAME = C_RED
BINARY SEARCH.
IF SY-SUBRC = 0.
X_VBAK-INDICAT = X_ICON-ID.
*--modifying the TB_VBAK table
MODIFY TB_VBAK FROM X_VBAK.
ENDIF.
ENDIF.
ENDLOOP.
ENDMETHOD. "FINAL_POPULATE
METHOD top_of_page *
METHOD TOP_OF_PAGE.
PERFORM EVENT_TOP_OF_PAGE USING E_DYNDOC_ID.
ENDMETHOD. "top_of_page
METHOD DISPLAY.
*--Building fieldcatalog table
PERFORM FIELDCATLOG.
*--FOr making the Layout settings
PERFORM LAYOUT.
*--For sorting the fields
PERFORM SORTING.
*--perform for displaying the ALV
PERFORM ALV_GRID_DISPLAY.
ENDMETHOD. "DISPLAY
ENDCLASS. "LC_VBAK IMPLEMENTATION
*& Form FIELDCATLOG
Building the FIELDCATALOG
FORM FIELDCATLOG .
CLEAR: X_FDCAT,TB_FDCAT[].
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 1.
X_FDCAT-FIELDNAME = 'INDICAT'(004) .
X_FDCAT-TABNAME = 'TB_VBAK'(005).
X_FDCAT-SCRTEXT_L = 'STATUS_INDICATOR'(006).
APPEND X_FDCAT TO TB_FDCAT.
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 2.
X_FDCAT-FIELDNAME = 'VBELN'(007) .
X_FDCAT-TABNAME = 'TB_VBAK'(005).
X_FDCAT-SCRTEXT_L = 'SALES DOC'(008).
APPEND X_FDCAT TO TB_FDCAT.
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 3.
X_FDCAT-FIELDNAME = 'AUDAT'(009) .
X_FDCAT-TABNAME = 'TB_VBAK'.
X_FDCAT-SCRTEXT_L = 'DOC DATE'(010).
APPEND X_FDCAT TO TB_FDCAT.
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 4.
X_FDCAT-FIELDNAME = 'VBTYP'(011) .
X_FDCAT-TABNAME = 'TB_VBAK'.
X_FDCAT-SCRTEXT_L = 'SALES CATEGORY'(012).
APPEND X_FDCAT TO TB_FDCAT.
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 5.
X_FDCAT-FIELDNAME = 'AUART'(013) .
X_FDCAT-TABNAME = 'TB_VBAK'.
X_FDCAT-SCRTEXT_L = 'DOC TYPE'(014).
APPEND X_FDCAT TO TB_FDCAT.
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 6.
X_FDCAT-FIELDNAME = 'AUGRU'(015) .
X_FDCAT-TABNAME = 'TB_VBAK'.
X_FDCAT-SCRTEXT_L = 'REASON'(016).
APPEND X_FDCAT TO TB_FDCAT.
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 7.
X_FDCAT-FIELDNAME = 'NETWR'(017) .
X_FDCAT-TABNAME = 'TB_VBAK'.
X_FDCAT-SCRTEXT_L = 'NET VALUE'(018).
X_FDCAT-DO_SUM = C_X.
APPEND X_FDCAT TO TB_FDCAT.
X_FDCAT-ROW_POS = 1.
X_FDCAT-COL_POS = 8.
X_FDCAT-FIELDNAME = 'WAERK'(019) .
X_FDCAT-TABNAME = 'TB_VBAK'.
X_FDCAT-SCRTEXT_L = 'UNIT'(020).
APPEND X_FDCAT TO TB_FDCAT.
ENDFORM. " FIELDCATLOG
*& Module STATUS_0007 OUTPUT
module for setting the pf status
MODULE STATUS_0007 OUTPUT.
SET PF-STATUS 'ZSTATUS'.
SET TITLEBAR 'xxx'.
ENDMODULE. " STATUS_0007 OUTPUT
*& Module USER_COMMAND_0007 INPUT
module for handling the user commands
MODULE USER_COMMAND_0007 INPUT.
OK_CODE = SY-UCOMM.
CASE OK_CODE.
WHEN 'BACK'.
LEAVE TO SCREEN 0.
WHEN 'CANCEL'.
LEAVE TO SCREEN 0.
WHEN 'EXIT'.
LEAVE TO SCREEN 0.
ENDCASE.
ENDMODULE. " USER_COMMAND_0007 INPUT
*& Form LAYOUT
ALV Layout settings
FORM LAYOUT .
CLEAR X_LAYOUT.
*-- making Layout settings
X_LAYOUT-GRID_TITLE = 'Sales Header Document'(021).
X_LAYOUT-ZEBRA = C_X.
IF P_ALVDIS = C_X.
X_LAYOUT-NO_HGRIDLN = C_X.
X_LAYOUT-NO_VGRIDLN = C_X.
ENDIF.
ENDFORM. " LAYOUT
*& Form SORTING
sub routine for sorting criteria
FORM SORTING .
CLEAR X_SORT.
X_SORT-SPOS = '1'(022).
X_SORT-FIELDNAME = 'AUART'.
X_SORT-UP = C_X.
APPEND X_SORT TO TB_SORT.
CLEAR X_SORT.
X_SORT-SPOS = '2'(023).
X_SORT-FIELDNAME = 'VBTYP'.
X_SORT-UP = C_X.
APPEND X_SORT TO TB_SORT.
CLEAR X_SORT.
X_SORT-SPOS = '3'(024).
X_SORT-FIELDNAME = 'WAERK'.
X_SORT-UP = C_X.
X_SORT-SUBTOT = C_X.
APPEND X_SORT TO TB_SORT.
ENDFORM. " SORTING
*& Form CREATE_CONTAINER_OBJECT
subroutine to create object of container
FORM CREATE_CONTAINER_OBJECT .
CREATE OBJECT CUSTOM_CONTAINER
EXPORTING
CONTAINER_NAME = 'CUST_CONTROL'(025)
EXCEPTIONS
CNTL_ERROR = 1
CNTL_SYSTEM_ERROR = 2
CREATE_ERROR = 3
LIFETIME_ERROR = 4
LIFETIME_DYNPRO_DYNPRO_LINK = 5
OTHERS = 6
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. " CREATE_CONTAINER_OBJECT
*& Form CREATE_ALV_GRID_OBJECT
subroutine to create object of ALV GRID
FORM CREATE_ALV_GRID_OBJECT .
CREATE OBJECT OBJ_ALV_GRID
EXPORTING
I_PARENT = CUSTOM_CONTAINER
EXCEPTIONS
ERROR_CNTL_CREATE = 1
ERROR_CNTL_INIT = 2
ERROR_CNTL_LINK = 3
ERROR_DP_CREATE = 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. " CREATE_ALV_GRID_OBJECT
*& Form ALV_GRID_DISPLAY
subroutine to call method for displaying the ALV GRID
FORM ALV_GRID_DISPLAY .
CALL METHOD OBJ_ALV_GRID->SET_TABLE_FOR_FIRST_DISPLAY
EXPORTING
IS_LAYOUT = X_LAYOUT
CHANGING
IT_OUTTAB = TB_VBAK
IT_FIELDCATALOG = TB_FDCAT
IT_SORT = TB_SORT
EXCEPTIONS
INVALID_PARAMETER_COMBINATION = 1
PROGRAM_ERROR = 2
TOO_MANY_LINES = 3
OTHERS = 4.
IF SY-SUBRC <> 0.
MESSAGE ID SY-MSGID TYPE SY-MSGTY NUMBER SY-MSGNO
WITH SY-MSGV1 SY-MSGV2 SY-MSGV3 SY-MSGV4.
ENDIF.
CALL SCREEN 0007.
ENDFORM. " ALV_GRID_DISPLAY
START OF SELECTION
START-OF-SELECTION.
*--Creating a reference variable for the class LC_VBAK
DATA : OBJ1 TYPE REF TO LC_VBAK.
*--Creating a container object
PERFORM CREATE_CONTAINER_OBJECT.
*--Creating a ALV GRID control object
PERFORM CREATE_ALV_GRID_OBJECT.
*--Creating a object of class LC_VBAK
CREATE OBJECT OBJ1.
*--calling vbak population method
CALL METHOD OBJ1->VBAK_POPULATE.
*--calling icon population method
CALL METHOD OBJ1->ICON_POPULATE.
*--calling fianl table population method
CALL METHOD OBJ1->FINAL_POPULATE.
*--calling final method for display
CALL METHOD OBJ1->DISPLAY.
*& Form EVENT_TOP_OF_PAGE
text
-->P_E_DYNDOC_ID text
FORM EVENT_TOP_OF_PAGE USING P_E_DYNDOC_ID TYPE REF TO
CL_DD_DOCUMENT.
ENDFORM. " EVENT_TOP_OF_PAGE -
How to save Custom control records ?
Hi guru ,
1. How to save Custom control records module pool program ?
I wrote multiple lines of record in custom control
Who to save that records ?
thanking you.
Regards,
Subash.REPORT ZCUSTOMC.
CLASS event_handler DEFINITION.
PUBLIC SECTION.
METHODS: handle_f1 FOR EVENT f1 OF cl_gui_textedit
IMPORTING sender,
handle_f4 FOR EVENT f4 OF cl_gui_textedit
IMPORTING sender.
ENDCLASS.
DATA: ok_code LIKE sy-ucomm,
save_ok LIKE sy-ucomm.
DATA: init,
container TYPE REF TO cl_gui_custom_container,
editor TYPE REF TO cl_gui_textedit.
DATA: event_tab TYPE cntl_simple_events,
event TYPE cntl_simple_event.
DATA: line(256) TYPE c,
text_tab LIKE STANDARD TABLE OF line,
field LIKE line.
DATA handle TYPE REF TO event_handler.
START-OF-SELECTION.
line = 'First line in TextEditControl'.
APPEND line TO text_tab.
line = '----
APPEND line TO text_tab.
line = '...'.
APPEND line TO text_tab.
CALL SCREEN 100.
MODULE status_0100 OUTPUT.
SET PF-STATUS 'SCREEN_100'.
IF init is initial.
init = 'X'.
CREATE OBJECT: container EXPORTING container_name = 'TEXTEDIT',
editor EXPORTING parent = container,
handle.
event-eventid = cl_gui_textedit=>event_f1.
event-appl_event = ' '. "system event
APPEND event TO event_tab.
event-eventid = cl_gui_textedit=>event_f4.
event-appl_event = 'X'. "application event
APPEND event TO event_tab.
CALL METHOD: editor->set_registered_events
EXPORTING events = event_tab.
SET HANDLER handle->handle_f1
handle->handle_f4 FOR editor.
ENDIF.
CALL METHOD editor->set_text_as_stream EXPORTING text = text_tab.
ENDMODULE.
MODULE cancel INPUT.
LEAVE PROGRAM.
ENDMODULE.
MODULE user_command_0100 INPUT.
save_ok = ok_code.
CLEAR ok_code.
CASE save_ok.
WHEN 'INSERT'.
CALL METHOD editor->get_text_as_stream IMPORTING text = text_tab.
WHEN 'F1'.
MESSAGE i888(sabapdocu) WITH text-001.
WHEN OTHERS.
MESSAGE i888(sabapdocu) WITH text-002.
CALL METHOD cl_gui_cfw=>dispatch. "for application events
MESSAGE i888(sabapdocu) WITH text-003.
ENDCASE.
SET SCREEN 100.
ENDMODULE.
CLASS event_handler IMPLEMENTATION.
METHOD handle_f1.
DATA row TYPE i.
MESSAGE i888(sabapdocu) WITH text-004.
CALL METHOD sender->get_selection_pos
IMPORTING from_line = row.
CALL METHOD sender->get_line_text
EXPORTING line_number = row
IMPORTING text = field.
CALL METHOD cl_gui_cfw=>set_new_ok_code "raise PAI for
EXPORTING new_code = 'F1'. "system events
CALL METHOD cl_gui_cfw=>flush.
ENDMETHOD.
METHOD handle_f4.
DATA row TYPE i.
MESSAGE i888(sabapdocu) WITH text-005.
CALL METHOD sender->get_selection_pos
IMPORTING from_line = row.
CALL METHOD sender->get_line_text
EXPORTING line_number = row
IMPORTING text = field.
CALL METHOD cl_gui_cfw=>flush.
ENDMETHOD.
ENDCLASS.
aniruddh -
Scene Builder: cannot edit when I embed a custom control!
Hi guys, I'm having an issue with Scene Builder and embedded custom controls...
I have a LoginPanel .fxml/.java module, which contains two re-usable custom controls I've built:
* StatusZone .fxml/.java
* LanguageSelector .fxml/.java
The application runs.
However, I can't open LoginPanel.fxml to edit it with SceneBuilder v1.1 (developer preview).
To be specific, in LoginPanel.fxml, I have this data:
<StatusZone fx:id="statusZone" />
<LanguageSelector fx:id="languageSelector" />
SCENARIO 1
-- LoginPanel.fxml --
<?import kalungcasev2.view.StatusZone?>
<?import kalungcasev2.view.LanguageSelector?>
I get:
Warning: File 'LoginPanel.fxml' contains references to types that could not be loaded.
Missing types are [kalungcasev2.view.StatusZone]
I can click 'Set up classpath', but no matter which folder I choose, it doesn't seem to fix the problem.
SCENARIO 2:
-- LoginPanel.fxml --
<?import kalungcasev2.view.*?>
I get:
Warning: File 'LoginPanel.fxml' contains references to types that could not be loaded.
Missing types are: [StatusZone, LanguageSelector]
I can click 'Set up classpath', but no matter which folder I choose, it doesn't seem to fix the problem.
How do I fix this?Hi,
If no ClassLoader is configured in the FXMLLoader, then the FXMLLoader will try to load the
classes using the System/Context class loader.
This works well in the context of an application where everything is in the system class loader.
In SceneBuilder however - your classes will not be in the System class loader, but in a special
URL class loader that SceneBuilder created for your FXML file.
SceneBuilder sets this ClassLoader on the FXMLLoader that loads your top FXML file,
but it can't do anything for the instances of FXMLLoader that your own code creates.
Therefore - it's best to configure your FXMLLoader with the appropriate class loader,
which is usually the class loader that loaded your custom type.
See https://javafx-jira.kenai.com/browse/DTL-5177 for more details.
-- daniel
Edited by: daniel on Apr 25, 2013 7:33 AM
Sorry - to be more precise:
loader.setClassLoader(this.getClass().getClassLoader());
is the correct line. -
How a custom control is advised it gains or looses focus?
Hey, at least I have a question to ask, instead of answering them... :-)
Actually, I already asked it in another thread, in one of my answers: [onMouseClicked Event Is Failing To Fire|http://forums.sun.com/thread.jspa?threadID=5391008] but I fear it is lost in a rather lengthly message, so I ask it in its own thread, because I was to bring the attention of knowledgeable people (hello Sun people! :-D).
The question is simple: In a custom control in JavaFX 1.2, with skin and behavior, how a control is advised when it gains or looses focus?
The purpose is to let the skin to change the look of the component upon these events, like it is done for standard controls (eg. putting a border around the focused control).
If the control is clicked, you know (unless it is disabled) that it will have the focus. But I see no way to see the lost of focus, nor when we gain (or loose) it with Tab/Shift+Tab (if it has focusTraversable to true).
I looked for onFocus() and onBlur() events (or similar), but found nothing. No mixin, nothing related in javafx.scene.input.TextInput and friends, etc.
I explored the Web but since 1.2 is still new, I found not much information. Only a fragment of source code in [Re: Further location optimizations|http://markmail.org/message/gsevtlkeq45rrdun] where I see scene.getFocusOwner() but this one isn't easily usable because it is package protected (and it is not an event, anyway).
A possible solution would be to have a timer to inspect the state focused of the nodes, but it is so kludgy I didn't even tried to implement it!
I hope I just missed the information... If there is no easy/official/working way in 1.2, I hope this will be corrected for next version!That's a very good remark, handling of focus highlight shouldn't be done at control (model)'s level. I hesitated to put it in behavior, but it feels more natural in the skin, so I did as you suggested.
you'll need an interface, and JavaFX does not do thatYou have mixins. But I didn't used them here.
focused variable never is set to trueHave you included the
public override var focusTraversable = true;
line?
To support multiple skins, my control becomes:
public class StyledControl extends Control
// Data related to the control (the model)
public var count: Integer;
public override var focusTraversable = true;
init
if (skin == null) // Not defined in instance
// Define a default styler
skin = ControlStyler {}
package function Incr(): Void
if (count < 9)
count++;
}quite bare bones (I intendedly keep the model simple).
Note I still define a default skin in case user doesn't provide it: they shouldn't care about this detail unless they want to change it.
I defined an abstract default skin, implementing most variables (particularly the public ones that can be styled) and the focus change:
public abstract class DefaultControlStyler extends Skin
//-- Skinable properties
public var size: Number = 20;
public var fill: Color = Color.GRAY;
public var textFill: Color = Color.BLACK;
public var focusFill: Color = Color.BLUE;
package var mainPart: Node; // Decorations (id, focus) are kept out of layout
package var focusHighlight: Node;
package var idDisplay: Text;
package var valueDisplay: Text;
init
behavior = ControlBehavior { info: bind control.id }
node = Group
//-- Behavior: call controller for actions
onMouseReleased: function (evt: MouseEvent): Void
(behavior as ControlBehavior).HandleClick(evt);
postinit
// Once defined by the sub-class, insert into the node
insert [ mainPart, idDisplay, valueDisplay ] into (node as Group).content;
public abstract function ShowIncrement(): Void;
var hasFocus = bind control.focused on replace
if (hasFocus)
ShowFocus();
else
HideFocus();
// Default handling of focus display, can be overriden if needed
public function ShowFocus(): Void
insert focusHighlight into (node as Group).content;
public function HideFocus(): Void
delete focusHighlight from (node as Group).content;
public override function contains(localX: Number, localY: Number): Boolean
return mainPart.contains(localX, localY);
public override function intersects(localX: Number, localY: Number,
localWidth: Number, localHeight: Number): Boolean
return mainPart.intersects(localX, localY, localWidth, localHeight);
}and the concrete skins implement the mainPart, idDisplay, valueDisplay, focusHighlight nodes, override ShowIncrement with an animation, override getPrefWidth and getPrefHeight to set to mainPart size and might override ShowFocus or HideFocus (if we want it behind mainPart for example).
The behavior is:
public class ControlBehavior extends Behavior
public var info: String; // Only for debug information...
// Convenience vars, to avoid casting each time
var control = bind skin.control as StyledControl;
var csSkin = bind skin as DefaultControlStyler;
public override function callActionForEvent(evt: KeyEvent)
println("{info}{control.count}: KeyEvent: {evt}");
if (evt.char == '+')
Incr();
package function HandleClick(evt: MouseEvent): Void
control.requestFocus();
Incr();
function Incr(): Void
control.Incr();
println("{info}: Ouch! -> {control.count}");
csSkin.ShowIncrement();
}and knows only the abstract default skin (to apply feedback of user input to skin).
I use it as follow:
Stage
title: "Test Styling Controls"
scene: Scene
width: 500
height: 500
content:
HBox
translateX: 50
translateY: 100
spacing: 50
content:
StyledControl { id: "Bar" },
StyledControl { /* No id */ layoutInfo: LayoutInfo { vpos: VPos.BOTTOM } },
StyledControl { id: "Foo" },
StyledControl { id: "Gah" },
StyledControl { id: "Bu", skin: AltCtrlStyler {} },
stylesheets: "{__DIR__}../controlStyle.css"
}BTW, I tried layoutY: 50 in place of the layoutInfo definition, but the control remained at default place. Am I reading incorrectly the ref. or is this a bug? -
Oracle WebLogic Integration's Custom Control and SOA Suite Spring Component
I crated this thread to inform users about some issues with the
Oracle WebLogic Integration's Custom Control and SOA Suite Spring Component
tutorial from
http://www.oracle.com/technology/architect/soa-suite-series/wli_custom_control_spring_component.html
- Fig. 6 doesn't agree with what's just above. This step isn't necessary because it can be create automatically when you make a class.
- Fig. 11 shows the package
sample.oracle.otn.soaessentials.javainteg
and the class should be placed in
sample.oracle.otn.soaessentials.javainteg.impl
- The Business Tier -> Spring 2.5 might not be available. Extensions steps steps should be given.
- Fig. 15 When lgger-context is created in Jdev 11.1.1.3.0 the Spring context is created in
/mywork/SOASuiteWLIEssentials/JavaIntegration/src/META-INF
while in the sample project it is in
/mywork/SOASuiteWLIEssentials/JavaIntegration
- Fig 18 has incorrect class name.
- Fig 19 is incorrect: there is no Spring 2.5 SCA in Jdev 11.1.1.3.0; there is only WebLogic SCA. Where is the canvas mentioned above?
- Fig 28 logger-context.xml is not where it is displayed in the fig. It is /src/Meta-Inf/.
- Most of the fig from the deployment are not up to date.
- I don't understand the need for the portion:
"Implementing the use case in WLI" up to
"Implementing the use case in SOA Suite"
It confused me when I tried to follow the tutorial.I am also looking for the same .... Please share the CLoning script for SOA Suite from Prod to staging Env...
Thanks. -
Developing custom controls for Third Pary softwares
Hello,
I am using a third party software that is a little bit old but it is still used at work. From this software it is possible to design windows forms that later on are loaded to smalls IPCs with windows embedded (XP and CE) and by lunching and application in
the IPCs these forms can be used.
From the form designs section of this software there is a "smart toolbox" from were the controls can be dragged and dropped (please see attached image). These controls seems to be designed by the third party software.
My cuestion is the following:
How can I design my own custom control? Is there any way that I can desing this controls from visual studio? what version?
Thanks,
Enrique.
Kikeman Electric Systems EngineerHi Enrique,
-->Is there any way that I can desing this controls from visual studio? what version?
I suggest you using the VS2013, it's free and it contains more new features. You could download this version from the below site:
https://www.visualstudio.com/en-us/downloads/download-visual-studio-vs#DownloadFamilies_2
-->How can I design my own custom control?
You could add the custom control like the following way.
1) Right-click on the toolbox, then choose "Choose Items.."
2) Click the "Browse..." button to choose the custom control. (Your dll files)
If you have any other concern regarding this issue, please feel free to let me know.
Best regards,
Youjun Tang
We are trying to better understand customer views on social support experience, so your participation in this interview project would be greatly appreciated if you have time. Thanks for helping make community forums a great place.
Click
HERE to participate the survey.
Maybe you are looking for
-
BAPI FM FOR READING EMAIL AND GIVING PARTNER INFO
Hello All, As I am new to SAP, As per my requirement, I need to check my partner through email. User will give email and then I should get related partner details, here I cannot use table. So i need FM for fetching partner by giving email and ( tex
-
I tried to replicate data sources in BW for the R/3 source system. But, still no data sources shows up under the source system. RFC detaination works on both BW and R/3 system. What way should I troubleshoot this issue?
-
So I did the latest FF upgrade (36.0.3) when notified. Then I went to take a look at the release notes in https://www.mozilla.org/en-US/firefox/releases/ for 36.0.3 but there are none. So was this a legitimate release without documentation or did I j
-
MultiProvider: How to decipher the underlying SQL query
Hello Guys, I have joined 2 cubes using MultiProvider. I created a query which takes Key Figure values from both cubes. When I go to "Display SQl Query", I see 2 separare queries for each cube separately. I don't see a join between them. If I have to
-
I recently upgraded my Macbook Pro with OS X and now my HP printer won't work. Can anyone help?