/** Prepares the repository form */ private Tab setupRepository(final ValuesManager vm) { // Prepare the tab used to configure the repository where documents and // other data will be stored Tab repositoryTab = new Tab(); repositoryTab.setTitle(I18N.message("repository")); final DynamicForm repositoryForm = new DynamicForm(); repositoryForm.setID("repositoryForm"); repositoryForm.setValuesManager(vm); TextItem repositoryItem = ItemFactory.newTextItem(REPOSITORY_FOLDER, "repofolder", null); repositoryItem.setWidth(200); repositoryItem.setRequired(true); repositoryItem.setWrapTitle(false); repositoryItem.setDefaultValue(getDefaultFolder()); repositoryForm.setFields(repositoryItem); repositoryForm.setDisabled(true); repositoryTab.setPane(repositoryForm); return repositoryTab; }
public CargaProductoCompra(CompraDetalle compradetalle, final Sgc_capa_web mainWindow) { VLayout layout = new VLayout(10); final DynamicForm form = new DynamicForm(); form.setBackgroundColor("#006633"); form.setBorder("2px"); form.setAutoFocus(true); form.setNumCols(3); form.setWidth(500); Label label = new Label(); label.setBackgroundColor("#99ffcc"); label.setHeight(30); label.setWidth(500); label.setPadding(10); label.setAlign(Alignment.CENTER); label.setValign(VerticalAlignment.CENTER); label.setWrap(false); label.setShowEdges(true); label.setContents( "<div style='color:black;font-size:15'><b>Carga de Productos de la Compra</b></div>"); TextItem codigoText = new TextItem("codigo"); codigoText.setTitleStyle("{font-color:white;font-weigh:bold;font-size:14}"); codigoText.setTitle("Codigo"); codigoText.setDisabled(true); codigoText.setWrapTitle(false); final TextItem productoText = new TextItem("producto"); productoText.setTitle("Producto"); productoText.setDefaultValue(new Date()); productoText.setTitleStyle("{font-color:white;font-weigh:bold;font-size:14}"); productoText.setWrapTitle(false); final TextItem cantidadText = new TextItem("cantidad"); cantidadText.setTitle("Cantidad"); cantidadText.setTitleStyle("{font-color:white;font-weigh:bold;font-size:14}"); cantidadText.setWrapTitle(false); final TextItem preciocompraText = new TextItem("preciocompra"); preciocompraText.setTitle("Precio"); preciocompraText.setTitleStyle("{font-color:white;font-weigh:bold;font-size:14}"); preciocompraText.setWrapTitle(false); ButtonItem button = new ButtonItem("save", "Aceptar"); button.setStartRow(false); button.setWidth(80); button.setIcon("approve.png"); button.addClickHandler( new ClickHandler() { @Override public void onClick(ClickEvent event) { CompraDetalleServiceAsync service = GWT.create(CompraDetalleService.class); ServiceDefTarget serviceDef = (ServiceDefTarget) service; serviceDef.setServiceEntryPoint(GWT.getModuleBaseURL() + "compradetalleService"); CompraDetalle compradetalle = new CompraDetalle(); compradetalle.setId_producto(Integer.parseInt(form.getValueAsString("producto"))); compradetalle.setCantidad(Integer.parseInt(form.getValueAsString("cantidad"))); compradetalle.setPrecioCompra( Double.parseDouble(form.getValueAsString("preciocompra"))); // compra.setTotalCompra(Integer.parseInt("15000")); if (form.getValueAsString("codigo") != null) { compradetalle.setIdCompDet(Integer.valueOf(form.getValueAsString("codigo"))); } try { service.guardar( compradetalle, new AsyncCallback<Void>() { @Override public void onFailure(Throwable caught) { Window.alert( "Ocurrio un error: " + caught.getClass().getName() + " " + caught.getMessage()); } @Override public void onSuccess(Void result) { new CargaProductoCompra(mainWindow); } }); } catch (Exception e) { e.printStackTrace(); } } }); if (compradetalle != null) { codigoText.setDefaultValue(String.valueOf(compradetalle.getIdCompDet())); productoText.setDefaultValue(compradetalle.getId_producto()); cantidadText.setDefaultValue(compradetalle.getCantidad()); preciocompraText.setDefaultValue(((Object) compradetalle.getPrecioCompra()).toString()); } form.setFields(codigoText, productoText, cantidadText, preciocompraText, button); layout.addMember(label); layout.addMember(form); mainWindow.showDialog(layout); }
/** Prepares the database tab */ private Tab setupDatabase(final ValuesManager vm) { // Prepare the map with all database engines engines.put( MYSQL, new String[] { "MySQL 5.x", "com.mysql.jdbc.Driver", "jdbc:mysql://<server>[,<failoverhost>][<:3306>]/<database>", "org.hibernate.dialect.MySQLDialect", "SELECT 1" }); engines.put( "PostgreSQL", new String[] { "PostgreSQL 9.x", "org.postgresql.Driver", "jdbc:postgresql:[<//server>[<:5432>/]]<database>", "org.hibernate.dialect.PostgreSQLDialect", "SELECT 1" }); engines.put( ORACLE, new String[] { "Oracle 10g/11g", "oracle.jdbc.driver.OracleDriver", "jdbc:oracle:thin:@<server>[<:1521>]:<sid>", "org.hibernate.dialect.Oracle10gDialect", "SELECT 1 FROM DUAL" }); engines.put( SQLSERVER, new String[] { "SQL Server 2005/2008", "net.sourceforge.jtds.jdbc.Driver", "jdbc:jtds:sqlserver://<server>[:<1433>]/<database>;instance=<instance>", "org.hibernate.dialect.SQLServerDialect", "SELECT 1" }); Tab databaseTab = new Tab(); databaseTab.setTitle(I18N.message("database")); final DynamicForm databaseForm = new DynamicForm(); databaseForm.setWidth(450); databaseForm.setID("database"); databaseForm.setValuesManager(vm); databaseForm.setDisabled(true); RadioGroupItem dbType = new RadioGroupItem(); dbType.setName(DB_TYPE); dbType.setWrapTitle(false); dbType.setRequired(true); dbType.setVertical(false); dbType.setValueMap(I18N.message(INTERNAL), I18N.message("external")); dbType.setValue(I18N.message(INTERNAL)); dbType.setRedrawOnChange(true); dbType.setTitle(I18N.message("dbtype")); // The database engine, if the External db was chosen SelectItem dbEngine = new SelectItem(); dbEngine.setTitle(I18N.message("dbengine")); dbEngine.setWrapTitle(false); dbEngine.setVisible(false); dbEngine.setName(DB_ENGINE); dbEngine.setDefaultValue(MYSQL); LinkedHashMap<String, String> valueMap = new LinkedHashMap<String, String>(); for (String engine : engines.keySet()) { valueMap.put(engine, engines.get(engine)[0]); } dbEngine.setValueMap(valueMap); dbEngine.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); RequiredIfValidator ifValidator = new RequiredIfValidator(); ifValidator.setExpression( new RequiredIfFunction() { public boolean execute(FormItem formItem, Object value) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); dbEngine.setValidators(ifValidator); dbEngine.addChangeHandler( new ChangeHandler() { public void onChange(ChangeEvent event) { String selectedItem = (String) event.getValue(); databaseForm.getField(DB_DRIVER).setValue(engines.get(selectedItem)[1]); databaseForm.getField(DB_URL).setValue(engines.get(selectedItem)[2]); } }); // The driver for the external DB TextItem dbDriver = ItemFactory.newTextItem(DB_DRIVER, "driverclass", null); dbDriver.setVisible(false); dbDriver.setDefaultValue(engines.get(MYSQL)[1]); dbDriver.setWrapTitle(false); dbDriver.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); dbDriver.setValidators(ifValidator); // The connection URL to external DB TextItem dbUrl = ItemFactory.newTextItem(DB_URL, "connectionurl", null); dbUrl.setWidth(200); dbUrl.setVisible(false); dbUrl.setDefaultValue(engines.get(MYSQL)[2]); dbUrl.setWrapTitle(false); dbUrl.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); dbUrl.setValidators(ifValidator); // The username to access the external DB TextItem dbUsername = ItemFactory.newTextItem(DB_USERNAME, "username", null); dbUsername.setVisible(false); dbUsername.setWrapTitle(false); dbUsername.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); // The password to access the external DB PasswordItem dbPassword = new PasswordItem(); dbPassword.setVisible(false); dbPassword.setTitle(I18N.message("password")); dbPassword.setName(DB_PASSWORD); dbPassword.setWrapTitle(false); dbPassword.setShowIfCondition( new FormItemIfFunction() { public boolean execute(FormItem item, Object value, DynamicForm form) { return !I18N.message(INTERNAL).equals(databaseForm.getValue(DB_TYPE)); } }); databaseForm.setFields(dbType, dbEngine, dbDriver, dbUrl, dbUsername, dbPassword); databaseTab.setPane(databaseForm); return databaseTab; }