1.12 Agregar una query al diálogo

Ya nos acercamos al final. Para ir acabando lo que haremos será agregarle una query a nuestro diálogo.
 Una vez más, modifcamos nuestra clase contract para añadirle una query.

[DataContractAttribute,
  SysOperationContractProcessingAttribute(classStr(TestSysOperationUIBuilder))]

class TestSysOperationDataContract implements SysOperationInitializable, SysPackable
{
    CustAccount custAccount;

    FromDate fromDate;
    ToDate toDate;
    str encodedQuery;


    #define.CurrentVersion(1)
    #LocalMacro.ParmList
      encodedQuery,
      custAccount,
      fromDate,
      toDate
    #EndMacro


public Query getQuery()
{
  return new Query(SysOperationHelper::base64Decode(encodedQuery));

}
 
public void setQuery(Query _query)
{
    encodedQuery = SysOperationHelper::base64Encode(_query.pack());
}


[DataMemberAttribute,
SysOperationControlVisibilityAttribute(false),
AifQueryTypeAttribute("_encodedQuery", queryStr('CustTable'))]
public str parmQuery(str _encodedQuery = encodedQuery)
{
    encodedQuery = _encodedQuery;
    return encodedQuery;
}

 
Ahora si ejecutamos la clase nos mostrará el típico botón de query.  Con la query indicada en el método parmQuery.



*Recordad que deberéis borrar los datos de uso y hacerle un CIL.

Este post es el equivalente al siguiente para la RunBaseBatch:
 

Para descargar el fichero xpo sólo tenéis que presionar en el siguiente enlace:

Descargar fichero xpo

Comentarios