Dynamics NAV – Resources

Walkthrough: Publishing, Raising, and Subcribing to an Event in Microsoft Dynamics NAV

This walkthrough uses a simple example scenario to demonstrate how to program events in the application.


Restoring a Database in a Different Domain

You may need to restore a Microsoft Dynamics NAV database in a situation where the users you had previously created are no longer available. For example, if you have restored your database in a different Windows domain or on a different network altogether. In this situation, you must take extra steps to assure that you will be able to run the Microsoft Dynamics NAV Windows client and connect to the database. More…

USE restored_db;
TRUNCATE TABLE "User Personalization";
TRUNCATE TABLE "User Property";
TRUNCATE TABLE "Access Control";
TRUNCATE TABLE "User";
GO

Action Image Library

The RoleTailored client includes images that you can use on actions that display in the Action Pane and command bar menus. To add an image to an action, you must provide the name of the image. For more information…

Anuncios

Java


Expande/Collapse Tree on Node select

A veces necesitamos cambiar la funcionalidad que viene por defecto en el arbol de primefaces, y expandir o contraer los nodos al seleccionarlos:

<p:tree .. selectionMode="single"
         rendered="true" scrollable="false">
         <p:treeNode style="border:none;overflow:hidden">
            <p:commandLink value="#{nodo.descripcion}"
                  action="#{...}" update="#{...}">
                 <f:param name="nodo" value="#{...}" />
            </p:commandLink> 
         </p:treeNode>
     <p:ajax event="select" update="..." listener="#{myBean.onNodeSelect}"/>
</p:tree>

En el bean correspondiente ponemos:

	public void onNodeSelect(NodeSelectEvent event) {
        if(!event.getTreeNode().isLeaf())
        {
	        if(event.getTreeNode().isExpanded())
	        {
	        	event.getTreeNode().setExpanded(false);
	        }
	        else
	        {
	        	event.getTreeNode().setExpanded(true);
	        }
        }
    }

Links

Comparator de cadenas con acentos

A veces es necesario ordenar una lista alfabéticamente, sin tener en cuenta los acentos, por ejemplo en el caso de nombres de personas, por ejemplo MiLista: Angel, Ángel, Pablo, ..etc, en caso de usar un comparador como el siguiente;

Comparator comp = (SelectItem a, SelectItem b) -> 
{
   if ((a.getValue()!=null) && (b.getValue()!=null))
      return a.getLabel().compareTo(b.getLabel());
   else
      return 1;
};
Collections.sort(MiLista, comp);
Go...

la ordenación seria:

  • Angel.
  • Pablo.
  • Ángel.

En el caso de que quisieramos una ordenación, sin tener en cuenta los acentos, usariamos el siguiente codigo:

Comparator comp = (SelectItem a, SelectItem b) -> 
{
   if ((a.getValue()!=null) && (b.getValue()!=null))
      //return a.getLabel().compareTo(b.getLabel());
       return Collator.getInstance().compare(a.getLabel(), b.getLabel());
   else
      return 1;
};
Collections.sort(MiLista, comp);
Go...

Composite Components in JSF 2.0

Desde JSF 2.0, es muy fácil crear componentes reutilizables, conocidos como composite componentsLeer más


Reset page number in primefaces Controls

...
<h:form>
...
<p:dataTable id="xxxyy" var="..." ... widgetVar="myWidgetData" .../>
...
<p:commandButton value="..." icon="..."  style="..." 
   actionListener="#{cc.attrs.metodoXXX}"
    update="#{cc.id}:idFormxxx:yyy" >
      <p:ajax onstart ="PF('myWidgetData').getPaginator().setPage(0)"/>
</p:commandButton>
</h:form>
...