Using TableView and MVC
I have a problem with TableView. I use TableView to display a table which is an attribute of my model class.
Code in the view looks like this:
<htmlb:tableView
id = "TEST_ID"
table = "//model/t_selected_employees"
selectionMode = "MULTISELECT" />.
I also have a few buttons on this view, when the button is pressed in DO_HANDLE_EVENT method I append a line to table but when the next DO_HANDLE_DATA method occurs table flushes. All other parameters stay filled.
Thank you for future help.
your code in do_handle_event should luk like this now :
************Code .
DATA:
lt_string_table TYPE string_table.
CHECK NOT event IS INITIAL.
IF htmlb_event_ex->event_name = xhtmlb_events=>buttongroup AND
htmlb_event_ex->event_type = xhtmlb_events=>buttongroup_click.
DATA: ls LIKE LINE OF model->t_selected_employees.
CASE htmlb_event_ex->event_defined.
WHEN 'TEST'.
call model->insert_line.
ENDCASE.
ENDIF.
Code ends.
in Model class create the insert_line methos and put your append code there as :
mothod insert_line.
ls-num = 55. ls-pernr = '00001280'. ls-fio = 'TEST'.
APPEND ls t_selected_employees.
endmethod.
Similar Messages
-
Error in displaying hierachry report with TableView and Tableiterator
Hello,
I tried to create a BSP as shown in this tutorial:
/people/vijaybabu.dudla/blog/2008/08/04/display-hierarchy-report-in-bsp-using-tableview-and-tableview-iterator
When starting the BSP I get an error that a field symbol is not assigned in the method get_column_name.
When debugging the method get_column_name I can see that row_ref is initial. So the field symbols <row> and <col> are not assigned to any values, which causes the error some lines below.
METHOD get_column_value .
*-To get the Column values which is used in the Interator
FIELD-SYMBOLS: <row> TYPE ANY, <col> TYPE ANY, <cur> TYPE ANY.
ASSIGN row_ref->* TO <row>.
ASSIGN COMPONENT column_name OF STRUCTURE <row> TO <col>.
DATA tempchar(240) TYPE c.
IF currency IS NOT INITIAL.
ASSIGN COMPONENT currency OF STRUCTURE <row> TO <cur>.
WRITE <col> CURRENCY <cur> TO tempchar.
MOVE tempchar TO column_value.
CONCATENATE column_value ` ` <cur> INTO column_value.
ELSE.
WRITE <col> TO tempchar.
MOVE tempchar TO column_value.
ENDIF.
CONDENSE column_value.
ENDMETHOD.
Any help?
Thank youHi Patrick,
Thank you for the answer.
Unfortunately there is still the error with the unassigned field symbol after implementing the render_row_start method.
Any help?
Edit: It works now. There was an error with a wrong variable name (stupig mistake.)
Thanks for the help!
Edited by: Robert Karlovic on Mar 5, 2009 10:29 AM -
TableView in MVC - how to bind view to controller data?
Hi,
I have a default view in my BSP with a tableView on it. I have set the table and iterator variables. In the controller DO_INIT I am selecting the reqd data - how do I pass this data to my table view?
I have created a iterator class and implemented the required methods - how should I use this iterator class to move the data to the view.
In the DO_REQUEST method I am setting the attributes for the view - the table values and also iterator attribute, but its not working...
Thanks
KiranAll right we will try this one question at a time:
>How do I use the iterator, where do I implement the std. methods of the iterator interface.
I think that has already been answered in another thread after your question. But just to be clear, the iterator is generally a completly separate class that implements the interface IF_HTMLB_TABLEVIEW_ITERATOR. I said generally, because technically this can be any object that implements this interface. You could implement this interface in your model, your controller, or your application class - but this is not advised. I like to create a separate class and instaniate it either in my model or my application class. I store the object reference as an attribute of the hosting object. This makes the iterator easily accessible when you need it.
>How will my view know that it has to use the iterator class that I create?
It doesn't. Nor does it need to. The view has nothing to do with the iterator. The iterator is not a general method for generating Extension Elemetns (that is what the BEE is for). The iterator class is specific to the element htmlb:tableView and can only be used with this element. The Iterator instance is passed into the tableView during the definition of this element in the view. The class behind the tableView will then use and interact with the iterator class at the correct times. The table will pass the correct data into the iterator object so that the iterator can pass over either the column, the row, or the cell (the three different methods of the interface) and change the rendering of the tableView.
>I am new to MVC and dont know how to create biding between view & model attribute.
Yes Data binding is done between a view and a model (the model's attributes) not the controller. Data binding is very useful as metadata about fields can be consumed automatically by UI elements in the View. It also handles Input Handleing for you. I can't explain the entire concept of MVC and databind in a thread posting - as that wouldn't do it justice. However there are blogs, on-help and chapters in certain BSP Books dedicated to just that topic.
>Finally is the model class & application class one & the same?
No they are very different objects with different purposes. Application classes existed before MVC was supported by BSP. You can have one and only one application class per BSP application. They are used in stateful applications to store data and object references over the entire lifetime of the application. They can also be holders for application logic that spans the entire application. However since the introduction of MVC (in release 6.20) they should take a back seat to full MVC. MVC separates the presentation logic (view), flow and eventing (Controller) and Application Logic (Model) into separate objects. In a BSP application you can have 0:n model objects. Technically a model class is any standard ABAP class that inherits from CL_BSP_MODEL2. You create them in the ABAP Editor like any other class. However the inheritance has methods that can be called by the BSP and MVC framework to perform functions like data binding. -
When to use servlets and jsp in an application like shoping cart?
Hi All
I m going to design and implement a web application using servelts and jsp. I am still at its requirements analyze stage.
The application is almost likely a shopping cart. So if any of you have the deep knowledge about this domain with servlets and jsp please help me for a good design. What I realy need to know is that
1. what are the core requirements for a shoping cart ?
2. use cases ?
3. best way to follow mvc with servlets and jsp for it?
you can answer to this at the abstract level. no need to go in detail.
if you have any documents like design and use cases mail me to [email protected]
your cooperation is highly appreciated in this regards.Look into this kid
http://www.apl.jhu.edu/~hall/java/Servlet-Tutorial/Servlet-Tutorial-Session-Tracking.htm -
Checkbox in a table loop - without using Tableview or Iterator.
My client doesnt want to use tableview or iterator. We are using basic html to create the page. I know I can accomplish much easily using tableviews...but I am not allowed to use it.
My requirement is simple. In my layout I loop at my internal table and display the contents. The last field is displayed as a checkbox.
Ex:
Name status flag
Tom 10 [ ]
Ted 20 [X]
Rob 10 [X]
My loop in the Layout is as below:
<%
loop at t_rqdt into l_rqdt.
if l_rqdt-flag = 'X'.
l_chk = 'checked'.
endif.
%>
<tr bgcolor="#EFEFEF">
<td></td>
<td <%= l_rqdt-name %> </td>
<td <%= l_rqdt-status %></td>
<td class=tdstatus width=40% >
<input type=checkbox name="flag" value="flag" <%= l_chk %> > </td>
</tr>
<%
endloop.
%>
When I select couple of rows and mark the flag field checkbox, and SUBMIT at the end, and when I see my internal table t_rqdt field r_rqdt-flag.. I dont see them having value X for the rows I marked the check boxes.
Can anyone please help me how can I trap the checkboxes marked inside a table loop in my on input processing?
Thanks
PKMuch Thanks Raja! It worked!!
I declared as below for the form fields and was able to get values.
DATA: t_form_fields TYPE tihttpnvp.
DATA: l_form_fields TYPE LINE OF tihttpnvp.
CALL METHOD request->get_form_fields
CHANGING
fields = t_form_fields.
One more before my client asks me to do..
if I place a button CheckALL and Uncheck All on the layout, how can we check/uncheck all the checkboxes on the client side. Any simple Javascript method available? I know I can pass the itab to on input processing and get the flags set, but if it can be achieved on the client side using a script that would help.
Please let me know.
Thanks. -
Using TableView in DefaultStyledDocument
I have added tables to a DefaultStyledDocument using TableView, TableRow and ParagraphView for cells. I add text to the document using insertText(position, string, style) and tables using insert(position, elementSpec[]). The element spec array for a table might be:
tableStart
rowStart
cellStart
content
cellEnd
rowEnd
tableEndThis all works OK but in my tests, the table won't resize along the Y axis when it is not the first thing in the document. If it is the first (or only) thing everything is fine. The cells contain text and strangely, this wraps as expected as the window is shrunk but intercepting setSize at the table, row and cell levels shows that the Y axis never grows as the lines in the cells are broken. I'm drawing a border so, of course, the text appears 'outside' and if scrolling is required then anything below the preceived table size cannot be brought into view.
Using Java 1.4.1 on WinNT - Ideas welcome.The key to using TableView is to realise that it does the row/column span stuff but doesn't enforce the type of children you might want to put in it. It is declared abstract so you must extend it to use it, and if you want to use the TableRow inner class you must create the rows in the context of a TableView instance. That said, here is my code again. I explain the important points below:
import java.awt.Color;
import java.awt.Graphics;
import java.awt.Graphics2D;
import java.awt.geom.Rectangle2D;
import java.awt.Shape;
import java.awt.BasicStroke;
import javax.swing.SizeRequirements;
import javax.swing.event.DocumentEvent;
import javax.swing.text.View;
import javax.swing.text.BoxView;
import javax.swing.text.Document;
import javax.swing.text.ViewFactory;
import javax.swing.text.Element;
import javax.swing.text.AttributeSet;
import javax.swing.text.ParagraphView;
import java.util.HashSet;
* @author $Author: Sanderst $
* @version $Revision: 1 $
public class StyledEditorKit extends javax.swing.text.StyledEditorKit
private static HashSet elementTypes__;
public static String TABLE = "table";
public static String ROW = "row";
public static String CELL = "cell";
private ViewFactory viewFactory_ = new ExtendedViewFactory();
private ViewFactory origVf_;
static
elementTypes__ = new HashSet();
elementTypes__.add(TABLE);
elementTypes__.add(ROW);
elementTypes__.add(CELL);
public StyledEditorKit(ViewFactory vf)
origVf_ = vf;
public Document createDefaultDocument()
return new StyledDocument();
public ViewFactory getViewFactory()
return viewFactory_;
private class ExtendedViewFactory implements ViewFactory
public View create(Element elem)
String kind = elem.getName();
System.out.println("ExtendedViewFactory.create " + kind);
if (elementTypes__.contains(kind))
if (kind.equals(TABLE))
//System.out.println("ExtendedViewFactory.create TABLE!");
return new TableView(elem);
else if (kind.equals(ROW))
// If this gets called its a problem because TableRow is a
// member-inner class of TableView and we don't have the
// TableView to create it with. loadChildren is called instead
//System.out.println("ExtendedViewFactory.create ROW!");
return null;
else if (kind.equals(CELL))
//System.out.println("ExtendedViewFactory.create CELL!");
//return new ParagraphView(elem);
TableCell tc = new TableCell(elem);
tc.setBorderWidth((short)1);
tc.setCellPadding((short)3);
return tc;
else
return origVf_.create(elem); // Defer to swing's ViewFactory
else
// Defer to swing's ViewFactory
return origVf_.create(elem);
static private class TableView extends javax.swing.text.TableView
private View parent_;
final static private BasicStroke stroke_ = new BasicStroke(1.0f);
TableView (Element elem)
super(elem);
//System.out.println("TableView()");
// Override to protect our children from having their
// parent view set to null as well. See View.setParent()
public void setParent(View parent)
if (parent != null)
super.setParent(parent);
parent_ = parent;
public View getParent()
return parent_;
public void paint(Graphics g,
Shape allocation)
//layoutChanged(View.Y_AXIS);
super.paint(g, allocation);
//System.out.println("TableView.paint");
public void setSize(float width, float height)
super.setSize(width, height);
//System.out.println("TableView.setSize " + hashCode() + " " + width + " " + height);
public float getPreferredSpan(int axis)
float f = super.getPreferredSpan(axis);
//if (axis == View.Y_AXIS)
//System.out.println("TableView.getPreferredSpan " + hashCode() + " " + axis + " " + f);
return f;
public float getMinimumSpan(int axis)
float f = super.getMinimumSpan(axis);
//if (axis == View.Y_AXIS)
//System.out.println("TableView.getMinimumSpan " + hashCode() + " " + axis + " " + f);
return f;
public float getMaximumSpan(int axis)
//float f = super.getMaximumSpan(axis);
float f ;
if (axis == View.X_AXIS)
f = super.getPreferredSpan(axis); // No stretch. Could make configurable...
else
f = super.getMaximumSpan(axis);
//if (axis == View.Y_AXIS)
//System.out.println("TableView.getMaximumSpan " + hashCode() + " " + axis + " " + f);
return f;
protected void loadChildren(ViewFactory f)
if (f == null)
// No factory. This most likely indicates the parent view
// has changed out from under us, bail!
System.out.println("No factory!!");
return;
//System.out.println("TableView.loadChildren()");
Element e = getElement();
int n = e.getElementCount();
if (n > 0)
View[] added = new View[n];
for (int i = 0; i < n; i++)
added[i] = new TableRow(e.getElement(i));
replace(0, getViewCount(), added);
public class TableRow extends javax.swing.text.TableView.TableRow
TableRow(Element elem)
super(elem);
public void paint(Graphics g,
Shape allocation)
super.paint(g, allocation);
drawCellBorder(g, allocation);
//System.out.println("TableRow.paint");
public void setSize(float width, float height)
super.setSize(width, height);
//System.out.println("TableRow.setSize " + hashCode() + " " + width + " " + height);
public float getPreferredSpan(int axis)
float f = super.getPreferredSpan(axis);
//if (axis == View.Y_AXIS)
//System.out.println("TableRow.getPreferredSpan " + hashCode() + " " + axis + " " + f);
return f;
public float getMinimumSpan(int axis)
float f = super.getMinimumSpan(axis);
//if (axis == View.Y_AXIS)
//System.out.println("TableRow.getMinimumSpan " + hashCode() + " " + axis + " " + f);
return f;
public float getMaximumSpan(int axis)
float f = super.getMaximumSpan(axis);
//if (axis == View.Y_AXIS)
//System.out.println("TableRow.getMaximumSpan " + hashCode() + " " + axis + " " + f);
return f;
protected SizeRequirements calculateMinorAxisRequirements(int axis, SizeRequirements r)
int min = 0;
long pref = 0;
int max = 0; //Integer.MAX_VALUE;
int n = getViewCount();
for (int i = 0; i < n; i++)
View v = getView(i);
min = Math.max((int) v.getMinimumSpan(axis), min);
pref = Math.max((int) v.getPreferredSpan(axis), pref);
max = Math.max((int) v.getMaximumSpan(axis), max);
if (r == null)
r = new SizeRequirements();
r.alignment = 0.5f;
r.preferred = (int) pref;
r.minimum = min;
r.maximum = max;
return r;
protected void drawCellBorder(Graphics g,
Shape allocation)
// Get the overall bounding rectangle of the row
Rectangle2D r = allocation.getBounds2D();
// Set up the drawing
Graphics2D g2 = (Graphics2D)g;
g2.setStroke(stroke_);
g2.setColor(Color.BLACK);
int children = getViewCount();
// draw each cell border
for (int i = 0; i < children; i++)
int width = getSpan(View.X_AXIS, i);
r.setRect(r.getX(), r.getY(), width, r.getHeight());
//System.out.println("draw " + r);
g2.draw(r);
// Move the rectangle origin on to the next cell starting point
r.setRect(r.getX() + width, r.getY(), width, r.getHeight());
static private class TableCell extends ParagraphView
private short borderWidth_ = 0;
private short cellPadding_ = 0;
public TableCell(Element elem)
super(elem);
public void setBorderWidth(short width)
if (width < 0)
return;
short oldBw = borderWidth_;
borderWidth_ = width;
setInsets((short)(getTopInset() - oldBw - cellPadding_),
(short)(getLeftInset() - oldBw - cellPadding_),
(short)(getBottomInset() - oldBw - cellPadding_),
(short)(getRightInset() - oldBw - cellPadding_));
public void setCellPadding(short padding)
if (padding < 0)
return;
short oldCp = cellPadding_;
cellPadding_ = padding;
setInsets((short)(getTopInset() - oldCp - borderWidth_),
(short)(getLeftInset() - oldCp - borderWidth_),
(short)(getBottomInset() - oldCp - borderWidth_),
(short)(getRightInset() - oldCp - borderWidth_));
public void paint(Graphics g,
Shape allocation)
super.paint(g, allocation);
//System.out.println("TableCell.paint @" + Integer.toHexString(hashCode()) + " parent: " + getParent());
public void setSize(float width, float height)
super.setSize(width, height);
//System.out.println("TableCell.setSize " + hashCode() + " " + width + " " + height);
public float getPreferredSpan(int axis)
float f = super.getPreferredSpan(axis) + 2 * borderWidth_ + 2 * cellPadding_;
//if (axis == View.Y_AXIS)
//System.out.println("TableCell.getPreferredSpan " + hashCode() + " " + axis + " " + f);
//if (height_ != f)
// height_ = f;
//getParent().preferenceChanged(this, false, true);
return f;
public float getMinimumSpan(int axis)
float f = super.getMinimumSpan(axis) + 2 * borderWidth_ + 2 * cellPadding_;
//if (axis == View.Y_AXIS)
//System.out.println("TableCell.getMinimumSpan " + hashCode() + " " + axis + " " + f);
return f;
public float getMaximumSpan(int axis)
//float f = getPreferredSpan(axis);
float f = super.getMaximumSpan(axis) + 2 * borderWidth_ + 2 * cellPadding_;
//if (axis == View.Y_AXIS)
//System.out.println("TableCell.getMaximumSpan " + hashCode() + " " + axis + " " + f);
return f;
protected SizeRequirements calculateMajorAxisRequirements(int axis, SizeRequirements r)
SizeRequirements s = super.calculateMajorAxisRequirements(axis, r);
//System.out.println("TableCell.calculateMajorAxisRequirements " + hashCode() + axis + " " + " " + s);
return s;
protected void setInsets(short top,
short left,
short bottom,
short right)
short ntop = (short)(top + borderWidth_ + cellPadding_);
short nleft = (short)(left + borderWidth_ + cellPadding_);
short nbottom = (short)(bottom + borderWidth_ + cellPadding_);
short nright = (short)(right + borderWidth_ + cellPadding_);
super.setInsets(ntop,
nleft,
nbottom,
nright);
protected void setParagraphInsets(AttributeSet attr)
super.setParagraphInsets(attr);
setInsets(getTopInset(),
getLeftInset(),
getBottomInset(),
getRightInset());
}From the top:
1)
To make swing understand the new element types for creating tables you need your own EditorKit and ViewFactory. I personally like to delegate to, rather than extend the default ViewFactory so I check if the element type (that is the attribute name) is one that my ViewFactory implementation understands and if not fall back to the Swing one.
2)
My TableView extension only tweaks the geometry methods so that the table doesn't stretch to the full width of the space available. This is hard-coded but, like other things, will be set from the element's attributes when I use it in anger. It does its own parent handling - see above. Apart from that all methods are just intercepts to aid my debugging (I mean understanding) of javax.swing.text :-)
TableView.loadChildren creates the rows, thus satisfying the inner class nature of TableView.TableRow.
3)
TableRow just tweaks the geometry to stop rows growing to the full height of the available space, and I added border drawing (see below)
4) TableCell is an extension of ParagraphView. Again, borders and padding should be read from attributes, tbd.
Now you need to install the editor kit in any text pane you create - here's my extension of JTextPane to do that:
public class JTextPane extends javax.swing.JTextPane
public JTextPane()
protected EditorKit createDefaultEditorKit()
EditorKit ek = super.createDefaultEditorKit();
ViewFactory vf = ek.getViewFactory();
return new StyledEditorKit(vf);
}Finally I extended DefaultStyledDocument but only to expose some useful protected methods:
public class StyledDocument extends DefaultStyledDocument
* Expose protected method.
public void create(DefaultStyledDocument.ElementSpec[] data)
super.create(data);
public void insert(int offset,
DefaultStyledDocument.ElementSpec[] data) throws BadLocationException
super.insert(offset, data);
}Then to add tables you can use these methods like:
SimpleAttributeSet section = new SimpleAttributeSet();
section.addAttribute(AbstractDocument.ElementNameAttribute, "section");
SimpleAttributeSet table = new SimpleAttributeSet();
table.addAttribute(AbstractDocument.ElementNameAttribute, "table");
SimpleAttributeSet row = new SimpleAttributeSet();
row.addAttribute(AbstractDocument.ElementNameAttribute, "row");
SimpleAttributeSet cell = new SimpleAttributeSet();
cell.addAttribute(AbstractDocument.ElementNameAttribute, "cell");
SimpleAttributeSet redStyle = new SimpleAttributeSet();
redStyle.addAttribute(StyleConstants.Foreground, Color.RED);
SimpleAttributeSet greenStyle = new SimpleAttributeSet();
greenStyle.addAttribute(StyleConstants.Foreground, Color.GREEN);
DefaultStyledDocument.ElementSpec esSectionStart = new DefaultStyledDocument.ElementSpec(section, DefaultStyledDocument.ElementSpec.StartTagType);
DefaultStyledDocument.ElementSpec esSectionEnd = new DefaultStyledDocument.ElementSpec(section, DefaultStyledDocument.ElementSpec.EndTagType);
DefaultStyledDocument.ElementSpec esTableStart = new DefaultStyledDocument.ElementSpec(table, DefaultStyledDocument.ElementSpec.StartTagType);
DefaultStyledDocument.ElementSpec esRowStart = new DefaultStyledDocument.ElementSpec(row, DefaultStyledDocument.ElementSpec.StartTagType);
DefaultStyledDocument.ElementSpec esCellStart = new DefaultStyledDocument.ElementSpec(cell, DefaultStyledDocument.ElementSpec.StartTagType);
DefaultStyledDocument.ElementSpec esTableEnd = new DefaultStyledDocument.ElementSpec(table, DefaultStyledDocument.ElementSpec.EndTagType);
DefaultStyledDocument.ElementSpec esRowEnd = new DefaultStyledDocument.ElementSpec(row, DefaultStyledDocument.ElementSpec.EndTagType);
DefaultStyledDocument.ElementSpec esCellEnd = new DefaultStyledDocument.ElementSpec(cell, DefaultStyledDocument.ElementSpec.EndTagType);
DefaultStyledDocument.ElementSpec esCell1 = new DefaultStyledDocument.ElementSpec(redStyle, DefaultStyledDocument.ElementSpec.ContentType, "AFAIK".toCharArray(), 0, 5);
DefaultStyledDocument.ElementSpec esCell2 = new DefaultStyledDocument.ElementSpec(greenStyle, DefaultStyledDocument.ElementSpec.ContentType, "As far as I know".toCharArray(), 0, 16);
DefaultStyledDocument.ElementSpec esCell3 = new DefaultStyledDocument.ElementSpec(redStyle, DefaultStyledDocument.ElementSpec.ContentType, "Not to put too fine a point on it".toCharArray(), 0, 33);
DefaultStyledDocument.ElementSpec esCell4 = new DefaultStyledDocument.ElementSpec(greenStyle, DefaultStyledDocument.ElementSpec.ContentType, "NTPTFPOI".toCharArray(), 0, 8);
DefaultStyledDocument.ElementSpec ico = new DefaultStyledDocument.ElementSpec(icon, DefaultStyledDocument.ElementSpec.ContentType, " ".toCharArray(), 0, 1);
DefaultStyledDocument.ElementSpec[] esArray = {
esSectionStart,
esTableStart,
esRowStart,
esCellStart,
esCell1,
esCellEnd,
esCellStart,
esCell2,
esCellEnd,
esRowEnd,
esRowStart,
esCellStart,
esCell3,
esCellEnd,
esCellStart,
esCell4,
esCellEnd,
esRowEnd,
esTableEnd,
esSectionEnd };
com.inqwell.any.client.swing.StyledDocument doc = (com.inqwell.any.client.swing.StyledDocument)textPane.getDocument();
try
doc.insert(0, esArray);
catch(Exception e) {e.printStackTrace();}Hope that helps! -
Hi,
I am new to swing and have been going through JTable.
1. TableModel that should house the data, But it also stores UI related Info like column and isCellEditable.
2. The Table needs to be supplied with a Renderer to display items in the table, A renderer is a display element why is it tagged to Table.
3. Similarly a model is a data element , why should it manage the editing portion.
4. The Cell Editor is again tied to the Columns
I am not seeing the MVC pattern here, Since one is tied to the other.
Can someone explain how this confirms to MVC.
or
Jtable offers many flavours and is there another one better than using tablemodel and cell renderer.
Regards,
Shaileshshailesh_a wrote:
1. TableModel that should house the data, But it also stores UI related Info like column and isCellEditable.
ShaileshisCellEditable is not UI-related. It says if a part of you model is writable or not. -
I know it is probably not the right place for this request, but I try ;-)
I'm testing SWT/JFace and I would like to render a progress bar in a cell of a table using TableViewer class (and not only the Table class).
Any idea?
ThxYou're right in that you're wrong to post here. Check out www.eclipse.org and look for the fora there.
-Mike Schwager -
Using NULL and NOT NULL in prompted filters
Dear all,
While trying to grap the concept of prompted filters in sap bo web intelligence, I had a question whether why we cannot use NULL and NOT NULL while creating a prompted filters in our report.HI,
'Is Null' and 'Not Null' are the predefined functions in webi which only eliminate the null values or considering only null values.
'Is Null' and 'Not Null' are itself predefined functions that why you are not getting prompts.
Null values are standard across the databases so this is defined as a function in webi to specific eliminate the null values.
If something is not standard then there is option in the webi to use different operator with static values or with prompts.
More more information on Null see the Null wiki page.
Null (SQL) - Wikipedia, the free encyclopedia
Amit -
How do I use Qt and OpenGL with Visual Studio
Hi! I mainly want to program in C++ and I want to use Qt and OpenGL with Visual Studio.
I am currently revising C++ and later on i am going to start reading Qt and OpenGL. I have a background of
Embedded firmware design(C and Assembly).
The Visual Studio Version I have is 2013 ultimate. How do I use Qt and OpenGL with Visual Studio?
Thanks
AlexandrosHi ClassicalGuitar,
The forum supports VS setup and installation. And your issue is not about the forum. I will move the thread to off-topic forum. Thanks for your understanding.
Regards,
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. -
I wish to use VBA and Excel to programmatically open numbered Dreamweaver HTML (CS5) and find and replace text in the code view of these files, save and close them.
I have 5000 associations between Find: x0001 and Replace: y0001 in an Excel sheet.
I have the VBA written but do not know how to open, close and save the code view of the ####.html files. Please ... and thank you...
[email protected]This is actually the code view of file ####.html that I wish to find and replace programmatically where #### is a four digit number cataloguing each painting.... In 1995 I thought this was clever... maybe not so clever now :>)) Thank you for whatever you can do Rob!
!####.jpg!
h2. "Name####"
Oils on acrylic foundation commercial canvas - . xx X xx (inches) Started
Back of the Painting In Progress </p> </body> </html>
Warmest regards,
Phil the Forecaster, http://philtheforecaster.blogspot.ca/ and http://phils-market.blogspot.ca/ -
How do I use the time capsule to share itunes music between multiple apple devices? Also, is it possible to control the music on one device using another, and how do you set this up?
unless i'm missing something, i think you got mixed up, this is easy google for walk throughs
i'm assuming this is the new 3tb tc AC or 'tower' shape, if so, its wifi will run circles around your at&t device
unplug the at&t box for a minute and plug it back in
factory reset your tc - unplug it, hold down reset and keep holding while you plug it back in - only release reset when amber light flashes in 10-20s
connect the tc to your at&t box via eth in the wan port, wait 1 minute, open airport utility look in 'other wifi devices' to setup the tc
create a new wifi network (give it a different name than your at&t one) and put the tc in bridge mode (it may do this automatically for you, but you should double check) under the 'network' tab
login to your at&t router and disable wifi on it
add new clients to the new wifi network, and point your Macs to the time machine for backups -
I had an icloud account in 2009. We set it up as a family plan because my family had just changed from PC to Mac. We never used it and let the plan expire in 2010. My ical will not sync with my new iphone because it is linked to the family plan account that no longer exist. Because I don't remember my password, I tried resetting it. It says the personal information I entered is incorrect, but I know the information is correct...It's my birthday it asks for! Does anyone know how to get that account off of my mac without the account existing?
You were a MobileMe (not iCloud) subscriber in 2009 and this service has been terminated. However the login is an Apple ID and this never expires. What is your operating system? Do you have a MobileMe icon in System Preferences? - if so you should be able to sign out in it, but you may not have an iCloud icon to let you create an iCloud account, though you can do so if your iPhone has iOS 5 or above.
If you are getting login requests or other irritations from your MobileMe account you can go to (user)/Library/Preferences/ByHost and delete all .plist files beginning with com.apple.DotMac or com.apple.idisk, then reboot.
The minimum requirement for iCloud to let you sync your data is 10.7.5 though you can sync through iTunes (except with Mavericks). -
Can I use classes and methods for a maintenance view events?
Hello experts,
Instead of perform/form, can I instead use classes and methods, etc for a given maintenance view event, lets say for example I want to use event '01' which is before saving records in the database. Help would be greatly appreciated. Thanks a lot guys!Hi viraylab,
1. The architecture provided by maintenance view
for using EVENTS and our own code inside it -
It is provided using FORM/PERFORM
concept only.
2. At this stage,we cannot use classes.
3. However, inside the FORM routine,
we can write what ever we want.
We can aswell use any abap code, including
classes and methods.
(But this classes and methods won't have any
effect on the EVENT provided by maintenance view)
regards,
amit m. -
Error while accessing a library using content and structure
I have a library having document and folder inside it. When I open the library using content and structure I get an error with a correlation ID. When checked the the logs with Correlation ID got an error message "View 'All Document' does not exist."
'All Document' is name of default view on the library.
When I open the library from view all site content the library is being opened.
Please help!!!Hello Victoria,
Thanks for the response.
I have tried troubleshooting steps given by you.
Check if the issue occurs with other users. Use another user to access the library in Content and Structure and then compare the results. --
I tried with different users but no luck
Make sure that the user account with issue has permission to view the All Documents view of the library. --
Yes, user Account have the permission
Check if the issue occurs with other libraries in the Content and Structure. If not, I recommend to save the library as
a template including contents and then create a new library based on this template. After that use the new library instead of the old library. --
No other library have this problem. I cannot save the library as template including the contents as the it has many folders and files. The current size of library is 786 MB
Clear cache in the browser or use another browser to see if the issue still occurs. --
tries but issue persists.
Best regards,
Ratnesh
Maybe you are looking for
-
Retrieving license codes...
I recently purchased a new Intel Mac. I transferred all my data from my five year old eMac to my new iMac with little trouble. Most everything went fine, but I have hit a few small snags. Firstly my HP PSC1210 AIO printer will not work at all. It is
-
Dear All, For subcontracting scenerio for excisable material we are planing to use movement type 311 Q. as per sap help. in material master we need to specify some indicator so that at the time of GRN system consumes the quantity from project stock .
-
Issue with logic of in parameter of SP
Hi, below is my SP... user who is running this SP has an option to enter value for P_Step or not. if no value is entered for P_Step then its defaulted to NULL and all steps should run. If the user specifies some value like 10 or 20 or 30 then the SP
-
Hi, I am new to ODI,my scenario is that I want to poll a JMS Queue, from ODI for messages, and once I receive the message I want to persist it in DB, I need help to make this work. Thanks, Rahul
-
Face time will not let me sign in with my new password
face time will not let me sign in with my new password?