Keyboard shortcuts

Press or to navigate between chapters

Press S or / to search in the book

Press ? to show this help

Press Esc to hide this help

Indicadores no Cadastro

Na tela de cadastros também há opção de criar indicadores como na imagem abaixo:

An image

Sua razão é mostrar informações dos dados de um cadastro, como por exemplo, foi feito no Cadastro de OS, onde foram criados indicadores mostrando o Total de OS criadas em 2018, Cliente e a quantidade de OS em cada estado (Aberta, Andamento, Pausada, Cancela, Liberada para Faturamento, Finalizada) nos últimos 90 dias.

Sua configuração fica na nfs_core_ds_tabela, onde foi criada uma nova coluna chamada INDICATORS, pode ter 1 ou mais indicadores como é possível ver no exemplo.

Exemplo

O exemplo abaixo foi feito para a tela de OS da baggio:

{
  "totalOS": {
    "label": {
			"text": "OS criadas em 2018"
		},
    "color": "",
    "icon": {
			"class": "fa-signal"
		},
    "display": "[result]",
    "queryBuilder": {
      "totalOS": {
        "select": [
          "count(os.seq_db) result"
        ],
        "from": "os os",
        "where": [
          "os.INS_DH > '2018-01-01 00:00:00'"
        ]
      }
    }
  },
  "clientesAt": {
    "label": {
			"text": "Clientes atendidos nos últimos 90 dias"
		},
    "color": "green-jungle",
    "icon": {
			"class": "fa-check"
		},
    "display": "[result]",
    "queryBuilder": {
      "clientesAt": {
        "select": [
          "count(c.seq_db) result"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ],
          [
            "os",
            "cliente",
            "c",
            "c.SEQ_DB = os.CLIENTE_SEQ_DB"
          ]
        ],
        "where": [
          "os.INS_DH > date_sub(now(), interval 90 DAY)",
          "st.DESCRICAO not in ('Aberto', 'Cancelado')"
        ]
      }
    }
  },
  "osAberta": {
    "label": {
			"text": "OS abertas nos últimos 90 dias"
		},
    "color": "yellow-crusta",
    "icon": {
			"class": "fa-file"
		},
    "display": "[result]",
    "queryBuilder": {
      "osAberta": {
        "select": [
          "count(os.seq_db) r"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ]
        ],
        "where": [
          "os.INS_DH > date_sub(now(), interval 90 DAY)",
          "st.DESCRICAO  = 'Aberto'"
        ]
      }
    }
  },
  "osAnd": {
    "label": {
			"text": "OS em Andamento nos últimos 90 dias"
		},
    "color": "yellow-gold",
    "icon": {
			"class": "fa-file"
		},
    "display": "[result]",
    "queryBuilder": {
      "osAberta": {
        "select": [
          "count(os.seq_db) r"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ]
        ],
        "where": [
          "os.INS_DH > date_sub(now(), interval 90 DAY)",
          "st.DESCRICAO  = 'Andamento'"
        ]
      }
    }
  },
  "osPausado": {
    "label": {
			"text": "OS Pausada últimos 90 dias"	
		},
    "color": "red-mint",
    "icon": {
			"class": "fa-file"
		},
    "display": "[result]",
    "queryBuilder": {
      "osAberta": {
        "select": [
          "count(os.seq_db) r"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ]
        ],
        "where": [
          "os.INS_DH > date_sub(now(), interval 90 DAY)",
          "st.DESCRICAO  = 'Pausado'"
        ]
      }
    }
  },
  "osCancelado": {
    "label": {
			"text": "OS Cancelada últimos 90 dias"
		},
    "color": "grey-gallery",
    "icon": {
			"class": "fa-file"
		},
    "display": "[result]",
    "queryBuilder": {
      "osAberta": {
        "select": [
          "count(os.seq_db) r"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ]
        ],
        "where": [
          "os.INS_DH > date_sub(now(), interval 90 DAY)",
          "st.DESCRICAO  = 'Cancelado'"
        ]
      }
    }
  },
  "osLibFaturamento": {
    "label": {
			"text": "OS Liberada para Faturamento últimos 90 dias"
		},
    "color": "blue",
    "icon": {
			"class": "fa-file"
		},
    "display": "[result]",
    "queryBuilder": {
      "osAberta": {
        "select": [
          "count(os.seq_db) r"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ]
        ],
        "where": [
          "os.INS_DH > date_sub(now(), interval 90 DAY)",
          "st.DESCRICAO  = 'Liberado Faturamento'"
        ]
      }
    }
  },
  "osFechada": {
    "label": {
			"text": "OS finazalidas dos últimos 90 dias"
		},
    "color": "grey-cascade",
    "icon": {
			"class": "fa-file"
		},
    "display": "[result]",
    "queryBuilder": {
      "osFechada": {
        "select": [
          "count(os.seq_db) r"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ]
        ],
        "where": [
          "os.INS_DH > date_sub(now(), interval 90 DAY)",
          "st.DESCRICAO  = 'Fechado'"
        ]
      }
    }
  }
}

Exemplo de Indicador com Field Action

Veja aqui field action.

{
  "osIntegracao": {
    "label": {
      "text": "OS's com Faturamento liberado"
    },
    "color": "",
    "icon": {
      "class": "fa fa-signal"
    },
    "display": "[result]",
    "interval": "120000",
    "decimalPlace": "2",
    "queryBuilder": {
      "osIntegracao": {
        "select": [
          "count(os.seq_db) result"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ],
          [
            "os",
            "cliente",
            "c",
            "c.SEQ_DB = os.CLIENTE_SEQ_DB"
          ]
        ],
        "where": [
          "st.DESCRICAO in ('Liberada Faturamento')"
        ]
      }
    },
    "queryBuilderData": {
      "osIntegracao": {
        "select": [
          "os.seq_db Integrar",
          "os.codigo Codigo",
          "c.DESCRICAO Cliente",
          "st.DESCRICAO Status"
        ],
        "from": "os os",
        "inner_join": [
          [
            "os",
            "status_os",
            "st",
            "st.SEQ_DB = os.STATUS_OS_SEQ_DB"
          ],
          [
            "os",
            "cliente",
            "c",
            "c.SEQ_DB = os.CLIENTE_SEQ_DB"
          ]
        ],
        "where": [
          "st.DESCRICAO in ('Liberada Faturamento')"
        ]
      }
    },
    "report": {
      "displayColumns": [
        "Codigo",
        "Cliente",
        "Status",
        "Integrar"
      ],
      "links": {
        "Codigo": "/t/os/%Integrar%"
      },
      "fieldAction":{
        "Integrar" : "INDICATOR_FAT"
      }
    }
  }
}

Estilos e personalização

É possivel aplicar estilos CSS para alterar a aparencia dos cards, clique aqui para saber mais.