Ir para o conteúdo
  1. Re: Norma europeia de fatura eletrónica: eInvoicing - Diretiva 2014/55/EU

    marcolopes
    Por marcolopes,

    Ponto da situação?

    Vão aguardar pela lei?

    Vão criar uma exportação UBL (standard e ESPAP, ou apenas ESPAP?)

    Vão embeber o XML nos PDF (quem quiser tem acesso, quem não quiser não tem?)

    • 408 respostas
  2. Re: Redimencionamento de Forms de acordo com a resolução do ecrã

    Gnrtuga
    Por Gnrtuga,

    Boas, presumo que não estejas a criar uma Universal Windows Platform porque salvo erro o próprio código contido no XAML trata disso.

    Por acaso lembro-me de ver qualquer coisa dessas em que eram criados uns triggers para essa situação, mas tenho estado ausente do C# e já não me lembro onde vi isso.

    Mas vê isto que penso que dá para o que queres:

    https://www.codeproject.com/Articles/6810/Dynamic-Screen-Resolution

    Boa sorte.

    • 1 resposta
  3. Re: Executar Windows Media Player a partir de outro form

    Gnrtuga
    Por Gnrtuga,

    Boas, caso possa ser o WindowsMediaPlayer em vez do AXWindowsMediaPlayer  experimenta ver isto:

    https://docs.microsoft.com/pt-pt/windows/desktop/WMP/creating-the-windows-media-player-control-programmatically

    e isto:

    https://www.c-sharpcorner.com/UploadFile/26b237/playing-audio-and-video-file-in-windows-form-application/

    caso seja só o AXWindowsMediaPlayer, não tenho ideia...

    Boa sorte

    • 1 resposta
  4. Re: Consulta dupla SQL na mesma tabela

    Ruben Santos
    Por Ruben Santos,

    Será que a solução passa por converter o meu código em 1 select + (select limit 1)?

     

    Ou seja Um select limit 1 dentro de outro select?

    Será que alguem me pode ajudar a converter?

    • 9 respostas
  5. Re: Consulta dupla SQL na mesma tabela

    Ruben Santos
    Por Ruben Santos,

    Boa Tarde Joana,

    Já testei e dá erro na execução do primeiro Select, mesmo assim penso que isso limitaria toda a consulta ao primeiro registo, ou seja apresentaria apenas o primeiro registo de toda a consulta, preciso limitar os dados que seleciono da tabela ALIAS "dbo_opr_1".

     

    Obrigado pela tentativa de ajuda :D

    • 9 respostas
  6. Re: Consulta dupla SQL na mesma tabela

    Joaanaa.93
    Por Joaanaa.93,

    Exprimenta assim:

    Select Top 1 From (SELECT DISTINCTROW dbo_opr.num_ordem, dbo_opr.num_operario, dbo_opr.cod_gpt, dbo_opr.cod_pt, dbo_opr.un_pt, dbo_opr.data_fim, dbo_opr.cod_interrup, dbo_opr_1.data_ini FROM dbo_opr LEFT JOIN dbo_opr AS dbo_opr_1 ON (dbo_opr.num_ordem = dbo_opr_1.num_ordem) AND (dbo_opr.num_oper = dbo_opr_1.num_oper) AND (dbo_opr.cod_pt = dbo_opr_1.cod_pt) AND (dbo_opr.cod_gpt = dbo_opr_1.cod_gpt) GROUP BY dbo_opr.num_ordem, dbo_opr.num_operario, dbo_opr.cod_gpt, dbo_opr.cod_pt, dbo_opr.un_pt, dbo_opr.data_fim, dbo_opr.cod_interrup, dbo_opr_1.data_ini HAVING (((dbo_opr.cod_interrup) Is Not Null) AND ((dbo_opr_1.data_ini)>[dbo_opr].[data_fim])) ORDER BY dbo_opr.data_fim) Where Data_ini > Data:fim;

    • 9 respostas
  7. Re: Redimencionamento de Forms de acordo com a resolução do ecrã

    Joaanaa.93
    Por Joaanaa.93,

    Boas Pessoal

    Eu estou a contruir uma aplicação, e estou com um problema em relação aos redencionamentos dos Forms em relação a resolução de ecrã, como tenho utilizadores que usam a aplicação com a resolução 800x600, não conseguem ver o form todo, como tenho utilizadores que usam a resolução de 3840x2160 e não conseguem ver porque o form está muito pequeno, visto que eu tenho estado a desenvolver numa resolução de 1920x1080. 
    Alguém tem ideia de como se conseguia fazer o redencionamento do form em relação a resolução do ecrã?

     

    Obrigada desde já

    • 1 resposta
  8. Re: Consulta dupla SQL na mesma tabela

    Ruben Santos
    Por Ruben Santos,

    Boa tarde,

    Quase que já consegui obter o resultado que pretendo, contudo falta apenas limitar os resultados:

    SELECT DISTINCTROW dbo_opr.num_ordem, dbo_opr.num_operario, dbo_opr.cod_gpt, dbo_opr.cod_pt, dbo_opr.un_pt, dbo_opr.data_fim, dbo_opr.cod_interrup, dbo_opr_1.data_ini
    FROM dbo_opr LEFT JOIN dbo_opr AS dbo_opr_1 ON (dbo_opr.num_ordem = dbo_opr_1.num_ordem) AND (dbo_opr.num_oper = dbo_opr_1.num_oper) AND (dbo_opr.cod_pt = dbo_opr_1.cod_pt) AND (dbo_opr.cod_gpt = dbo_opr_1.cod_gpt)
    GROUP BY dbo_opr.num_ordem, dbo_opr.num_operario, dbo_opr.cod_gpt, dbo_opr.cod_pt, dbo_opr.un_pt, dbo_opr.data_fim, dbo_opr.cod_interrup, dbo_opr_1.data_ini
    HAVING (((dbo_opr.cod_interrup) Is Not Null) AND ((dbo_opr_1.data_ini)>[dbo_opr].[data_fim]))
    ORDER BY dbo_opr.data_fim;

    O resultado é o seguinte:

    BEr7xFN.png

    Ver Melhor

    Preciso agora de ajuda para limitar o campo "Data_ini" a apenas 1 resultado superior a "Data_fim"

    Está a retornar todos os registos correspondentes, contudo preciso que me retorne apenas o primeiro.

    Obrigado, Rúben Santos

    • 9 respostas
  9. Re: Consulta dupla SQL na mesma tabela

    Ruben Santos
    Por Ruben Santos,

    Boa tarde Ricardo Voigt e Cerzedelo,

    Obrigado pelas respostas, em primeiro lugar agradeço imenso ao Ricardo pelo exemplo, infelizmente não é o que procuro.

    E respondendo ás questões: Sim, terá várias interrupções.

    Agradeço também ao Cerzedelo, também pela resposta, esta penso aproximar-se bastante do que preciso.

    Passando a explicar:

    Considerem a seguinte tabela:

    Tabela "dbo_opr"

    h4RGgCz.png

    Ver Melhor

     

    Considerem que esta tabela é os registos de produção.

    Se olharem para a linha 2 sei que a produção é desde "10/01/2019 08:21:13" até "10/01/2019 12:54:30" ao finalizar colocou "Cod_Interrup"

    E sei que a próxima produção começou em "10/01/2019 14:04:53" independentemente do final desta próxima operação, já consigo saber quanto tempo durou a minha interrupção.

    Preciso de obter o tempo de interrupção da seguinte maneira: Data_fim (registo 2) - Data_Ini (registo 3)

    Não preciso de obter o resultado para já, apenas de listar as datas.

    Tenho uma consulta que me retorna os registos que tenham "Cod_Interrup"

    SELECT dbo_opr.cod_gpt, dbo_opr.cod_pt, dbo_opr.un_pt, dbo_opr.data_ini, dbo_opr.data_fim, dbo_opr.cod_interrup
    FROM dbo_opr
    WHERE (((dbo_opr.cod_interrup) Is Not Null));
     

    Após esta consulta tenho todos os registos que contenham "Cod_Interrup" guardada na consulta "Inicio_Interrup"

    O resultado será mais ou menos isto:

    MEjRpzw.png

    Ver Melhor

    Faltando agora a segunda consulta em que tenho imensas dificuldades pelo seguinte:

    Pretendo fazer uma consulta á mesma tabela para me retornar o campo "Data_Ini"

    Neste caso a consulta tem as seguintes condições:

    dbo_opr.cod_gpt = inicio_Interrup.cod_gpt

    dbo_opr.cod_pt = inicio_Interrup.cod_pt

    e será a primeira "Data_Ini" > "Data_fim"

     

    Se considerarmos a tabela Inicial o resultado para a consulta que pretendo será o seguinte:

    Data_Fim = "10/01/2019 12:54:30" (linha2)       <- Na minha consulta representa o inicio da interrupção porque tem o código "Cod_Interrup"

    Data_Ini = "10/01/2019 14:04:53" (linha3)         <- Na minha consulta representa o fim da interrupção porque voltou a entrar em funcionamento.

    h4RGgCz.png

    Ver Melhor

    Penso que a solução mais próxima do que preciso, será uma subconsulta, porém não estou a conseguir fazer.

    Agradeço desde já a ajuda e disponibilidade de todos

    • 9 respostas
  10. Re: Consulta dupla SQL na mesma tabela

    Cerzedelo
    Por Cerzedelo,

    Em  primeiro lugar, o concelho que dou, é em vez de criar uma query tao complexa, ir fazendo por partes.

    Em segundo, não percebi, o porque de um inner join, quando só está a fazer select a campos de uma tabela.

    Em terceiro, o Access tinha uma ferramenta gráfica para fazer as querys, e depois apresentava os comandos em sql. 

    O que provavelmente precisará e de fazer uma subquery, i. e.,  um select dentro de outro select.. Ver http://www.criarweb.com/artigos/subconsultas-em-sql.html

    • 9 respostas
  11. Re: Consulta dupla SQL na mesma tabela

    Ricardo Voigt
    Por Ricardo Voigt,

    Olá,

    primeira dúvida, neste teu caso, pode haver mais de uma interrupção? ou no máximo uma interrupção ?

    Minha primeira sugestão seria criar uma coluna "chave primária" numerada e sequencial.

    Assim, eu também tentaria transformar a coluna "cod_interrup" em uma "chave estrangeira", cujo valor apontaria para a "próxima linha lógica" da mesma tabela...

    Algo assim:

    cod	data_ini		data_fim			cod_interrup
    1	09/01/2019 15:48	09/01/2019 16:41	null
    2	10/01/2019 08:21	10/01/2019 12:54	3
    3	10/01/2019 14:04	10/01/2019 16:48	null
    4	11/01/2019 08:12	11/01/2019 12:52	5
    5	11/01/2019 14:14	11/01/2019 16:50	null
    6	14/01/2019 08:43	14/01/2019 12:57	7
    7	14/01/2019 14:04	null			null

    Quanto ao comando select que busca os dados (não tenho certeza quanto ao Access pois não utilizo) acho que seria necessário fazer "left join" para buscar a provável "data_ini"...

    O comando select ficaria mais ou menos assim...

    select a_ini.data_ini, a_fim.data_ini, a_fim.data_fim
    from dbo_opr a_fim
     left join dbo_opr a_ini on (a_ini.cod_interrup = a_fim.cod)
    where a_fim.data_fim is not null
      and a_fim.cod_interrup is null

    Assim:

    existe a certeza de quando uma tarefa termina (a_fim) com a condição "a_fim.cod_interrup is null";

    e se a condição "a_ini.data_ini is null" significa que NÃO houve interrupção.

    E abaixo, o resultado que eu obtive aqui testando/simulando no MYSQL:

    a_ini.data_ini		a_fim.data_ini		a_fim.data_fim
    NULL				09/01/2019 15:48	09/01/2019 16:41
    10/01/2019 08:21	10/01/2019 14:04	10/01/2019 16:48
    11/01/2019 08:12	11/01/2019 14:14	11/01/2019 16:50

    Espero ter ajudado... 

    Atenciosamente,

    Ricardo

    • 9 respostas
  12. Re: Consulta dupla SQL na mesma tabela

    Ruben Santos
    Por Ruben Santos,

    Precisava mesmo de ajuda neste tópico, estou com imensas dificuldades e sem nenhuma luz.

    • 9 respostas
  1. Ver Mais Actividade
×

Aviso Sobre Cookies

Ao usar este site você aceita os nossos Termos de Uso e Política de Privacidade. Este site usa cookies para disponibilizar funcionalidades personalizadas. Para mais informações visite esta página.