lsFusion 5, 6: Mais assíncrono, agregação / extensão / personalização de formulários, novas visualizações





Após o lançamento da primeira (terceira) versão pública da plataforma, recebemos uma grande quantidade de feedback, a maior parte do trabalho refletido na quarta versão recentemente lançada da plataforma. No entanto, uma parte significativa deste feedback permaneceu “fora de bordo”, mas não foi esquecido, e consequentemente formou um plano para o desenvolvimento da plataforma para um futuro próximo. É sobre esse plano que será discutido neste artigo.









A maior parte da funcionalidade planejada em um grau ou outro está relacionada à interface do usuário - sua ergonomia, modularidade e flexibilidade.









Mais assincronia



. (, , ). , , ‒ , UI.









INPUT, . , , : ( ), ( ). , , . DIALOG, . :







  1. INPUT DIALOG ASYNC , « » ( ).
  2. , INPUT, , DIALOG ( , — , ..), , . “ ” . ( ), , ASYNC.


ASYNC ( “” ).







:







  1. , .
  2. “” ( ) .
  3. ( ).
  4. “ " ( ).


«» ( , , ..), (“”) .









:







  • , — ,
  • “” ( , )


, , , , , . :







  1. ,
  2. ,
  3. «» .


“” UX .







/



, , , . ( , ), UX, , , .







, . , / , , , , ( , ). , , - (, ).







, “ ”. , , « » , ( , ), . , « » ( - ),







()



, , , .







( , ), , .







, , , ( ).







( — OBJECTS, BOX, — formOK, formClose, ..), “” . , «» .







( ), . :





FORM suppliersWithIncomes

    OBJECTS s=Supplier

    AGGR i=incomes

    FILTERS supplier(i.i)=s

;



FORM extendedSuppliers

    AGGR Suppliers

    PROPERTIES (s) debt

;

run() {

    SHOW extendedSuppliers;

}







Na versão atual da plataforma, a maioria dos elementos do sistema, incluindo formulários, podem ser expandidos. No entanto, no próprio formulário, você só pode adicionar novos elementos, não pode alterar os atributos dos elementos existentes (com exceção dos elementos de design, mas muitas vezes isso não é suficiente). Consequentemente, em versões futuras, é planejado eliminar esta lacuna e suportar a palavra-chave EXTEND (usada em outras instruções de sintaxe de extensões) dentro da própria instrução FORM. Por exemplo:





EXTEND FORM suppliers

    EXTEND PROPERTIES BACKGROUND debt(s)>10

        name(s), number(s)

;





Essa funcionalidade pode ser especialmente útil quando usada em conjunto com o mecanismo de agregação de formulário descrito na seção anterior.



Personalização de formulários



, , ( ) , - .







( , , ..), , , . .







/



( / ) . / .







, , / , .. ( ), .







Excel, , Excel, .







:





supplier(sku(d))

GROUP SUM sum(InvoiceDetail id) IF invoice(id)=i





Presume-se que nas interfaces onde você precisa especificar expressões, os nomes dos objetos também serão exibidos (para que fique claro a que você pode se referir).

Tanto o próprio construtor quanto as interfaces para adicionar / modificar atributos de propriedade provavelmente serão implementados usando os mecanismos lsFusion integrados (ou seja, na linguagem lsFusion usando elementos de plataforma, como propriedades e formulários).







Filtros Personalizados



Agora, a plataforma tem um mecanismo de filtragem personalizado, mas esse mecanismo tem uma série de desvantagens:







  1. A caixa de diálogo com filtros personalizados é exibida em uma janela separada, que não é muito amigável. Além disso, os filtros vão estritamente na vertical, o que também é inconveniente na interface acoplada.
  2. (- ).
  3. ( , , ).


, , USER FILTER, USERFILTERS ..









(, “” ) .







(). , ( , , ). . , . :





FORM reportSales ''

;

FORM reportSuppliersSales '  ''

    AGGR reportSales

    PIVOT ROW supplier(s);

;

FORM reportStockSales '  '

    AGGR reportSales

    PIVOT ROW stock(s)

;





()



. / ( ), . :







  1. “” URL. / ( , ).
  2. “ / ” , (, ).




lsFusion , Java Swing / / . HTML (-, lsFusion ), , -.







, :







  1. CONTAINER — . direction. .
  2. TABBED — . .
  3. TABLE — , . columns CONTAINER , .


SPLIT SCROLL (true/ false) ( SPLIT ).







alignCaptions, .







:







  1. . , , . TABBED — “”, , , .
  2. . , . “” , , ( ). , , .




. ( , , , ..).







( open-source javascript ), , , javascript .







, , , ( , ). « » ( ).







, , , . :







  • / / .
  • , , , / ( React state).




— . -, , , - , , . , , , , , . , , , . , .










All Articles