Jump to content

FabianoSouza

Members
  • Content count

    797
  • Joined

  • Last visited

Community Reputation

5 Regular

2 Followers

About FabianoSouza

Informações Pessoais

  • Sexo
    Masculino

Recent Profile Visitors

The recent visitors block is disabled and is not being shown to other users.

  1. FabianoSouza

    JSON AUTO - Aplicar um alias para a string de saída

    Ufa...encontrei a solução... usando subconsulta. SELECT ( SELECT SalesOrderNumber AS 'Order.Number', OrderDate AS 'Order.Date' FROM Sales.SalesOrderHeader FOR JSON PATH ) AS SalesOrder
  2. Gente, como faço para dar um apelido para o resultado retornado pelo JSON AUTO? O padrão é sair um campo quilométrico chamado "JSON_F52E..."
  3. FabianoSouza

    [Resolvido] Mesclar consulta 1 para n

    Show!! Problema resolvido! Muitíssimo obrigado @Motta
  4. FabianoSouza

    [Resolvido] Mesclar consulta 1 para n

    Olá @Motta Olhei o link. A função STRING_AGG é uma mão na roda. Eu não a conhecia. Fiz uns experimentos com base nos exemplo do link (veja box abaixo). Funcionou perfeitamente. SELECT a.articleId, title, STRING_AGG (tag, ',') as tags FROM dbo.Article AS a LEFT JOIN dbo.ArticleTag AS t ON a.ArticleId = t.ArticleId GROUP BY a.articleId, title; Porém , na minha situação preciso fazer dois JOIN. Aí a função STRING_AGG deixa de funcionar (retorna várias linhas). Consegue dizer se há como resolver isso? Veja meu cenário: SELECT V.Codigo , V.Titulo , STRING_AGG (AA.caminhoArq, ',') as arquivos FROM tabA AS V LEFT JOIN tabB AS AV ON V.Codigo = AV.codVaga LEFT JOIN tabC AS AA ON AV.codArqAcervo = AA.idArquivoAcervo WHERE V.Codigo = 123456 GROUP BY Codigo, Titulo, caminhoArq
  5. FabianoSouza

    [Resolvido] Mesclar consulta 1 para n

    Tenha a tab A (tabela pai) e a tab B (tabela filha). Quero saber como "mesclar" num SELECT os valores de um campo específico da tabela B com os campos já exibidos da tabela A numa única linha. Que ficasse uma linha mais ou menos assim: LINHA: _______________________________________________________________________________________________________________ NomeCompleto (da tab A) | Salario (da tab A) | Idade (da tab A) | Fotos (foto1.jpg, foto2.jpg, foto3.jpg... da tab B) _______________________________________________________________________________________________________________ O caractére separador no campo Fotos por ser vírgula, hífen, etc.
  6. FabianoSouza

    Remover última vírgula da string

    Pessoal, to apanhando para criar uma function para remover a última vírgula que aparece na string chamada beneficios. Estava tentando isso: ... REVERSE(STUFF(REVERSE( ---------------------------------- CASE WHEN valeTransporte = '1' Then 'Vale-transporte,' ELSE '' END + CASE WHEN valeRefeicao = '1' Then 'Vale-refeição,' ELSE '' END + CASE WHEN seguroDeVida = '1' Then 'Seguro de vida,' ELSE '' END ---------------------------------- ), 1, 1, '')) AS 'beneficios' ... O problema é que nem sempre haverá string para ser tratada, aí o campo aparece como NULL e gera problema na hora de gerar um JSON pela aplicação. Preciso de uma function que previna a situação de não haver string, e retorne valor vazio (não NULL). Valew!
  7. Como não existe o fórum de WhatsApp nesse portal creio que aqui seja o lugar mais adequado para postar minha dúvida sobre esse tema. Consegui colocar no meu site o botão de abrir o WhatsApp no navegador. Até aqui tudo ok. O problema é que toda vez que vou enviar mensagem para uma pessoa diferente é criada uma nova sessão...cria nova aba, carrega as conversas novamente e etc. Esse processo é demorado...tedioso se for feito muitas vezes (como é no meu caso). Quero saber dos amigos se há uma maneira de saber que já existe uma janela com "sessão ativa" do WhatsApp e retomar a partir dessa janela. Grato.
  8. FabianoSouza

    LI em coluna

    Muito obrigado @Omar~ !! Funciona.
  9. FabianoSouza

    Tratar campos booleanos e concatenar

    Vou dividir meu problema em duas etapas para facilitar o entendimento. ETAPA 1 Tenho uns 18 campos booleanos no meu select. Preciso tratar esses campos para sair um texto mais compreensível. Para isso geralmente uso CASE WHEN. Exemplo: CASE WHEN valeTransp = '1' Then 'Vale-transporte' WHEN valeTransp = '0' Then '' END AS 'vt' Minha primeira dúvida é saber se há uma forma mais prática de se fazer esse tipo de tratamento. Pois são 18 campos!! É muita coisa pra fazer CASE WHEN. ETAPA 2 Feito o tratamento dos campos, preciso criar uma string com um separador, contendo todas as saídas do tratamento dado acima. Quero que fique algo como: "Vale-transporte, Vale-refeição, Assistência médica, Seguro de vida". (pode sair em formato JSON também) Como resolvo essa bronca?? Valew!
  10. FabianoSouza

    LI em coluna

    Oi Felipe! Sua sugestão pode ajudar. Mas preciso evitar mudar a estrutura (usar DIV ou outros elementos) senão vai comprometer a hierarquia do meu layout. O ideal seria fazer só com a UL e LI mesmo. De todo modo ou ver se consigo adaptar para minha necessidade. Super obrigado. Só não vou marcar nenhuma reaction porque essa funcionalidade do fórum está dando erro quando clico. Também não sei como faço para marcar você na resposta Valew mesmo!
  11. FabianoSouza

    LI em coluna

    Tenho essa lista <ul> <li>1</li> <li>2</li> <li>3</li> <li>4</li> <li>5</li> </ul> Preciso que ele fique assim: 1 2 3 4 5 Como faço um CSS para isso? Obrigado.
  12. FabianoSouza

    Callback de resultado do AJAX - Como faço?

    Olá @gabrielms. Cara, não sou programador profissa...então vou expor minhas dúvidas como leigo. (fiz as mudanças no código mas ainda não funciona...estou investigando para ver onde pode haver erros meus de adaptação do código) 1) A function upDateRating(e) retorna o array. Isso entendi. Mas o que não entendi é para quem/onde o array é enviado, já que ela não chama function alguma. Me explica o conceito...não consigo enxergar link entre coisas.. Na função upDateRating(e), adaptei o trecho return ($array); para return upDateCard($array); Isso fez parte do processo funcionar (grava o que preciso no banco de dados). Mas ainda não dispara o alert da função FuncaoC. Sinal de que ainda falta algo. Parece que o trecho upDateCard(upDateRating()); não faz nada. Pois eu comentei essa linha e o comportamento geral manteve-se o mesmo. Valew!!
  13. Tenho a function A, que captura valores e os transfere para a function B (que é um AJAX). Preciso que a function B passe seu resultado para a function A. Creio que precise de um callback. Mas não estou sabendo com estruturar isso. Vejam como estão os códigos: FUNCTION A function upDateRating(e) { var $alvoClick = getTarget(e) , $ul = $alvoClick.parentNode , $idItem = $alvoClick.parentNode.parentNode.parentNode.parentNode.id , $valRating = $alvoClick.value var $array = [ { idItem:$idItem , favorito: 1 , rating: $valRating } ] upDateCard($array) } FUNCTION B (AJAX) function upDateCard(e) { var $array = e , $dados = JSON.stringify($array); function ajax() { var $obj = createXMLHTTP(); $obj.open('post', 'minhaPagina', true); $obj.setRequestHeader('content-type', 'application/x-www-form-urlencoded'); $obj.onreadystatechange=function(){ if ($obj.readyState == 4 && $obj.status == 200){ try { var $strResp = JSON.parse($obj.responseText); } catch(e) { alert('Erro. Dados em formato inválido.') return false; } return $strResp //PRECISO PASSAR ESSE VALOR DE VOLTA PARA A FUNCTION A } } $obj.send(encodeURI('str='+$dados)) } ajax() }
  14. FabianoSouza

    Aplicar estilo em tag LI específicas

    Tenho uma UL e preciso aplicar estilo nas LI 2, 3 e 4 apenas. Fiz esse código simplório para quebrar o galho. Mas deve haver uma forma mais simples de fazer. #div-conteudo > div[class="cards"] > div:nth-of-type(1) ul > li:nth-of-type(2) { display:inline; } #div-conteudo > div[class="cards"] > div:nth-of-type(1) ul > li:nth-of-type(3) { display:inline; } #div-conteudo > div[class="cards"] > div:nth-of-type(1) ul > li:nth-of-type(4) { display:inline; } Valew
  15. FabianoSouza

    Chamar function após prompt

    Preciso que o usuário escreve "DELETE" num prompt. Se isso for feito corretamente aí deve chamar uma function. Vejam o código. Tá tudo ok com as variáveis...foi só eu usar o prompt que a função parou de funcionar. var $confirma = prompt("Para excluir permanentemente digite DELETE neste campo."); if ($confirma != 'DELETE') { alert('Confirmação inválida.') return false; } var $flagArea = '2' //valor 2 para form principal , $frm = document.querySelectorAll('form')[0] , $dados = $frm['idItem'].value , $ulMnuLeft = document.getElementsByClassName('nav')[0] , $liAreaAtual = $ulMnuLeft.querySelector('li[value="1"]') excluir_SendItens($dados, $liAreaAtual.id, $flagArea) Onde estou errando??
×

Important Information

Ao usar o fórum, você concorda com nossos Terms of Use.