SoporteIniciar sesión
Contáctenos
Nuevas funciones SkipField, BlankValue e IsBlank (versión 3.2.91v)

Nuevas funciones SkipField, BlankValue e IsBlank (versión 3.2.91v)

June 26, 2015 · Michael Bock · Funcionalidades

Me complace anunciar que ahora tenemos disponibles algunas funciones nuevas en RapidiOnline. Estas nuevas funciones sirven para optimizar el uso de fórmulas en el mapeo de FieldList, de forma que las fórmulas en general puedan ser más cortas. Así no solo será más fácil escribir las fórmulas, sino que también serán más fáciles de mantener y será más rápido obtener una visión general de un mapeo concreto.

Nueva función IsBlank(expr)

La función IsBlank(expression) toma un campo o una expresión, y devuelve 1 (o true) si ese campo está en blanco o es nulo, o si la expresión se evalúa como un valor en blanco o nulo.

Algunos ejemplos:

IsBlank("Fax No.")    --->   1 (true) si el campo "Fax No." está en blanco o es nulo; en caso contrario, 0 (false)

IsBlank(DBLookup('DESTDS','User','Alias',"Salesperson",'Id'))   ---> 1 (true) si la función DBLookup no encuentra ningún User para este Salesperson, en caso contrario 0 (false)

La fórmula
##IF(EQUALS(TAXGROUP,''),0,1) 

ahora se puede escribir así

##IF(ISBLANK(TAXGROUP),0,1)  o incluso más corto, como ##1-ISBLANK(TAXGROUP)


Nueva función BlankValue(expr, expr2)

La función BlankValue(expression, expression-if-blank) devuelve "expression-if-blank" si "expression" se evalúa como un valor en blanco o nulo; en caso contrario, devuelve "expression". Esta función se puede usar en lugar de una combinación de las funciones IF y EQUALS, y por lo general hace que la fórmula completa sea más corta y fácil de leer.

Algunos ejemplos:

BlankValue(TAXGROUP, 'LOCAL')     ---> devuelve 'LOCAL' si el valor del campo TAXGROUP está en blanco o es nulo; en caso contrario, devuelve el valor del campo TAXGROUP.

BlankValue(DBLookup('DESTDS','User','Alias',"Salesperson",'Id'), DBLookup('DESTDS','User','Alias','MB','Id'))   ---> devuelve el Id del User cuyo alias coincide con el del campo Salesperson, si ese usuario existe en el destino; en caso contrario, devuelve el Id del User con alias "MB".

La fórmula
##IF(EQUALS(DBLookup('DESTDS','User','Alias',"Salesperson",'Id'),''), DBLookup('DESTDS','User','Alias','MB','Id'),DBLookup('DESTDS','User','Alias',"Salesperson",'Id'))
   

ahora se puede escribir como 

##BlankValue(DBLookup('DESTDS','User','Alias',"Salesperson",'Id'), DBLookup('DESTDS','User','Alias','MB','Id'))

 

Nueva función SkipField()

La nueva función SkipField() se utiliza para indicarle a Rapidi que omita este campo por completo y no lo envíe al sistema de destino.

La función solo se puede usar con los siguientes sistemas de destino: Salesforce.com, MS Dynamics CRM, MS Dynamics NAV WebService o MS Dynamics AX WebService.

La función es muy útil si quieres establecer un campo solo cuando tienes un valor para él, pero en caso contrario quieres dejar el campo tal como está en el destino (o dejar que el sistema de destino genere un valor predeterminado para el campo). Esto puede ser el caso del campo OwnerId en Salesforce.com o del productid en invoicedetail en MS CRM. La función SkipField() se suele usar combinada con las funciones BlankValue o IF.

Algunos ejemplos:

SkipField()   ---->  omitirá el envío del campo al sistema de destino.

La fórmula
##BlankValue(DBLookup('DESTDS','User','Alias',"Salesperson",'Id'), SkipField())

enviará el Id del User cuyo alias coincide con el del campo Salesperson, solo cuando ese usuario exista en el destino; en caso contrario, omitirá el campo y no lo enviará al destino en absoluto (dejando el valor que ya esté establecido, o dejando que el destino genere un valor predeterminado si se trata de un registro nuevo). Esto se podría usar con MS Dynamics NAV Customer como origen y Salesforce.com Account como destino.

La fórmula
##IF(EQUALS("Type",2), DBLOOKUP('DESTDS','product','productnumber',"No.",'productid'), SkipField())

enviará el productid correspondiente al artículo "No." al destino para las líneas con Type = 2, y omitirá el campo para el resto de las líneas. Esto se podría usar con las líneas de factura de MS Dynamics NAV como origen y invoicedetail de MS Dynamics CRM como destino.

Estas nuevas funciones están disponibles a partir de la versión 3.2.91v. Debes actualizar tanto el central como los RapidiConnectors a esta versión (o a una posterior).

Ponte en contacto con nuestro equipo de soporte para obtener esta actualización.

Gracias

Michael

Mantente al día sobre las nuevas funciones y mejoras

¡Suscríbete a las actualizaciones de producto!

Compruebe si encaja con su entorno

Díganos qué sistemas utiliza y le diremos con franqueza si Rapidi es la herramienta adecuada.