Autor Tópico: Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?  (Lida 681 vezes)

gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
A opção de colunas não fica visível e no filtro também quando se adiciona um campo campo do tipo "Campos da consulta" ele não funciona, qual seria a alternativa?

Fiz um módulo de etiquetas para imprimir no formato HTML mesmo e a batalha esta sendo grande pois o usuário quer poder escolher quais campos imprimir na etiqueta... (se alguém tiver um link explicando a melhor forma de fazer as benditas etiquetas também agradeço pq é um saco de fazer no SC)

uso a versão 7.01
Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes

Thyago Brasil

  • Expert
  • *****
  • Mensagens: 886
  • Crê no Senhor Jesus e será salvo tu e tua família
    • www.brasdesign.com.br
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #1 Online: Novembro 23, 2015, 06:29:16 pm »
Gustavo, vc selecionou o formato livre em Layout/Visualização?
Posta aqui como está seu HTML
Thyago Brasil
Desenvolvedor Web
Site: http://www.brasdesign.com.br

SC 5.02/SC 8.1

gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #2 Online: Novembro 24, 2015, 08:37:33 am »
Sim estou usando um layout html que fiz no formato de etiquetas. Meu problema não é em como utilizar o layout em formato livre e sim como fazer as coisas que falei usando o formato livre
Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes

Haroldo

  • Expert
  • *****
  • Mensagens: 6275
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #3 Online: Novembro 24, 2015, 09:50:11 am »
Gustavo o que você entende como bug?

Parte de seu html do formato livre deverá ser montado dinamicamente no evento onload e conforme a seleção do usuário você moverá ou não valores para esses campos.

gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #4 Online: Novembro 24, 2015, 10:05:16 am »
Ola Haroldo obrigado pela interação.

Coloquei como dúvida se não seria um BUG ele não dar a opção das colunas que simplesmente some e o fato de na opção de filtro da consulta ter o campo que seria exatamente para usarmos para isso não funciona que é o campo do tipo "Campos da Consulta". Eles não deveriam funcionar para ajudar nossa vida nesse processo?

Parte de seu html do formato livre deverá ser montado dinamicamente no evento onload e conforme a seleção do usuário você moverá ou não valores para esses campos.

Conforme seleção do usuário AONDE? você explicou a teoria a questão é como fazer o usuário selecionar os campos que ele quer que apareçam ou não no meu formato livre.
Voce
Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes

Haroldo

  • Expert
  • *****
  • Mensagens: 6275
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #5 Online: Novembro 24, 2015, 10:11:20 am »
A definição de bug não eh essa. Não exibe um erro aparente.

Formato livre te da a liberdade de desenhar o layout em HTML, e a exibição ou não dos campos devem ser condicionadas manualmente

gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #6 Online: Novembro 24, 2015, 10:24:47 am »
Bem se o fato de duas funcionalidades que servem para isso não funcionarem na opção de formato livre não ser um BUG é uma questão de ponto de vista que não vem ao caso. Coloquei como dúvida justamente para que alguém que saiba dizer se é ou não possa avaliar.

Eu sei o que é o formato livre e estou usando ele muito bem, porém não consigo fazer isso que falei que é dar a opção para o usuário selecionar as colunas/campos que ele quer que apareçam ... se é um HTML o layout do formato livre não posso colocar código php lá para verificar (IF...) se ele pediu pra aparecer algo ou não...

e por fim as opções existentes no SC para fazer isso não funcionam então qual a opção que me resta? essa é a grande questão... como você faria? ou como pode ser feito isso?

Se alguém me der uma luz de qual caminho eu poderia seguir ajudaria pois até então não faço idéia de como fazer... estou tentando colocar em filtros um campo para que o usuário selecione em um duplo select e esses valores sejam passados para  a consulta mas nem isso estou conseguindo porque não estou conseguindo recuperar o valor por la.

Exemplo: Criei no filtro da consulta um duplo select com o nome campos dentro dele coloquei manualmente o nome de dois campos.

Já tentei colocar No evento da consulta OnRecord, onScriptInit, OnApplicationInit para ele pelo menos imprimir esses valores e não consigo recuperar... dou um var_dump({campos}) e não volta nada

Se isso funcionasse eu poderia fazer um IF nesse valor e limpar os campos que não quero que apareçam pelo menos... a priori foi a única alternativa que pensei mas não consegui realizar ainda...
Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes

Thyago Brasil

  • Expert
  • *****
  • Mensagens: 886
  • Crê no Senhor Jesus e será salvo tu e tua família
    • www.brasdesign.com.br
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #7 Online: Novembro 24, 2015, 10:44:39 am »
Seria bom se você postasse aqui como está o seu html. Pode ser algo incorreto nele.
Thyago Brasil
Desenvolvedor Web
Site: http://www.brasdesign.com.br

SC 5.02/SC 8.1

gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #8 Online: Novembro 24, 2015, 10:48:17 am »
Olá Thyago obrigado pelo apoio, mas acho que você não entendeu... o HTML não tem problemas pois ele exibe todos os campos corretamente a questão é simplesmente como fazer essa funcionalidade de dar ao usuário a opção de selecionar os campos que ele quer que apareça.

mas já que vc insiste segue o html do formato livre

<table border="0" cellpadding="10">
<tr>
<!-- BEGIN bl2 -->
<td width="500px" height="160px" align="left">
   <font face="verdana" style="font-size:11px">
   <b>Org�o: {orgao}<br>
    Servi�o de Sa�de: {servico_de_saude}<br>
    {paciente}</b>
  <br> SUS: {cartao_SUS} - CPF: {cpf} <br>
    {endereco} - {numero} - {bairro} - {complemento} <br>
    {ponto_de_referencia} - CEP: {cep} - {municipio} - {estado}<br>
    Item edital Lente: {item_edital_lente} <br>
    Item edital Armação: {item_edital_armacao} <br>
    Tipo de Arma��o: {armacao}
  </font>
</td>
<!-- END bl2 -->

</tr>
</table>




Por exemplo como fazer para o usuário escolher se quer que apareça ou não o campo {paciente} desse html entendeu?
Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes

Jailton

  • Expert
  • *****
  • Mensagens: 2034
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #9 Online: Novembro 24, 2015, 10:58:26 am »
Etiquetas é recomendável fazer em PDF que você tem o controle exato em mm de onde vai imprimir a etiqueta ou exportar um csv; e o cliente usar um outro programa para finalizar a impressão, exemplo o Word.
O Princípio da Vibração. "Nada está parado, tudo se move, tudo vibra". Caibalion.

gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #10 Online: Novembro 24, 2015, 11:06:25 am »
Etiquetas é recomendável fazer em PDF que você tem o controle exato em mm de onde vai imprimir a etiqueta ou exportar um csv; e o cliente usar um outro programa para finalizar a impressão, exemplo o Word.

Obrigado pelo apoio Jailton, eu percebi isso, mas estou insistindo em fazer em formato livre pela facilidade do usuário gerar o html e imprimir, não ficou 100% o posicionamento mas funcionou. A grande questão agora é essa funcionalidade de seleção dos campos que já estou achando que não vai ser possível fazer
Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes

Haroldo

  • Expert
  • *****
  • Mensagens: 6275
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #11 Online: Novembro 24, 2015, 11:08:37 am »
Bem se o fato de duas funcionalidades que servem para isso não funcionarem na opção de formato livre não ser um BUG é uma questão de ponto de vista que não vem ao caso. Coloquei como dúvida justamente para que alguém que saiba dizer se é ou não possa avaliar.
Não é BUG. Não há falha ou erro aparente.

Eu sei o que é o formato livre e estou usando ele muito bem, porém não consigo fazer isso que falei que é dar a opção para o usuário selecionar as colunas/campos que ele quer que apareçam ... se é um HTML o layout do formato livre não posso colocar código php lá para verificar (IF...) se ele pediu pra aparecer algo ou não...
Seu código php de condicionamento aos campos devem ser no evento onRecord.

e por fim as opções existentes no SC para fazer isso não funcionam então qual a opção que me resta? essa é a grande questão... como você faria? ou como pode ser feito isso?
Eu faria e faço com ReportPDF

Se alguém me der uma luz de qual caminho eu poderia seguir ajudaria pois até então não faço idéia de como fazer... estou tentando colocar em filtros um campo para que o usuário selecione em um duplo select e esses valores sejam passados para  a consulta mas nem isso estou conseguindo porque não estou conseguindo recuperar o valor por la.
Mova o valor do campo para uma variável global no evento onValidate do Filtro e capture o valor dessa variável no evento onRecord.

Exemplo: Criei no filtro da consulta um duplo select com o nome campos dentro dele coloquei manualmente o nome de dois campos.

Já tentei colocar No evento da consulta OnRecord, onScriptInit, OnApplicationInit para ele pelo menos imprimir esses valores e não consigo recuperar... dou um var_dump({campos}) e não volta nada

Se isso funcionasse eu poderia fazer um IF nesse valor e limpar os campos que não quero que apareçam pelo menos... a priori foi a única alternativa que pensei mas não consegui realizar ainda...

Eu já condicionei campos em grids de formato livre, é possível, apesar de acreditar ser mais viável fazer co ReportPDF.

gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #12 Online: Novembro 24, 2015, 11:37:39 am »
Obrigado Haroldo e todos que ajudaram... vou tentar fazer dessa forma e depois dou feedback

Quanto a fazer em reportPDF sei que é a melhor form para posicionar bem os campos e não ter erro na impressão, mas pelo que vi lá também não tem solução para isso... ou seja lá não tem a opção de deixar os usuários selecionar os campos que quer que apareça... acabei de verificar. Mas fiquei curioso em saber como você faz isso lá Haroldo, pode compartilhar? voce fez como eu estou fazendo com um duplo select para selecionar os campos e apaga o display dele no onRecord é isso?

Acho muito ruim a montagem de layout lá no PDF por isso estou evitando usar

Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes

Haroldo

  • Expert
  • *****
  • Mensagens: 6275
  • Conhecimento diminui limitações.△TFA△
    • Infinitus Web Gestão Empresarial/Gestão ITIL/Consultoria Scriptcase
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #13 Online: Novembro 24, 2015, 11:43:08 am »
Na verdade minha situação é um pouco diferente. Conforme o perfil do usuário é mostrado um ou outro campo, que troco dinamicamente no evento onrecord.

Vou lhe dar outra sugestão:

criar uma tabela etiquetas (col1lin1, col2lin1, col3lin1, col1lin2, col2lin2, col3lin2, col1lin3, col2liln3,col3lin3)
Ou seja cada registro uma etiqueta, para uma tamanho único de etiquetas.

No evento onvalidate do filtro,  vc lê sua tabela alimenta essa tabela de etiquetas conforme as condições do filtro, e o sql de sua consulta deve apontar para tabela etiquetas.


gustavolobato

  • Iniciante
  • **
  • Mensagens: 87
  • www.GPSolucoes.com
    • GPSoluções TIC
    • Email
Re:Formato Livre - Como permitir que o usuário selecione os campos a aparecer? BUG?
« Responder #14 Online: Novembro 24, 2015, 12:03:56 pm »
Citar
Na verdade minha situação é um pouco diferente. Conforme o perfil do usuário é mostrado um ou outro campo, que troco dinamicamente no evento onrecord.

é bem diferente de dar a opção para o usuário informar quais campos quer... mas já é uma forma de fazer a seleção e estou seguindo parecido com isso... vamos ver se vai dar certo.

Citar
Vou lhe dar outra sugestão:

criar uma tabela etiquetas (col1lin1, col2lin1, col3lin1, col1lin2, col2lin2, col3lin2, col1lin3, col2liln3,col3lin3)
Ou seja cada registro uma etiqueta, para uma tamanho único de etiquetas.

No evento onvalidate do filtro,  vc lê sua tabela alimenta essa tabela de etiquetas conforme as condições do filtro, e o sql de sua consulta deve apontar para tabela etiquetas.

Quanto a sua sugestão acredito que eu não entendi. Me confirma se seria assim:
1) criar uma tabela no banco de dados chamada etiquetas apenas com os campos para tal - OK
2) no onvalidate do filtro leio esses dados dessa tabela? Aonde em que campo? Leio e alimento essa tabela???

Isso seria usando aquele duplo select que falei? pra selecionar os campos?

Não entendi  mesmo ficou confuso, desculpa pode explicar melhor.
Gustavo Lobato
GPSoluções TIC
www.gpsolucoes.com
Sites / Sistemas / Servidores-Redes