Ir para conteúdo
Entre para seguir isso  
Duxino

Problema com sintax

Recommended Posts

Estou tentando criar essa Function com base as informações que obtive do manual do MySQL, sei que deve ser algo bobo e idiota entretanto não consigo enxergar onde está o erro. :ph34r: Se alguém puder abrir meus olhos

Desde já muito obrigado pessoal!

 

DELIMITER $$
CREATE Function sc_retornarSaldoAnterior(empresa smallint, mes smallint, ano smallint) RETURNS NUMERIC(30,2)
BEGIN
DECLARE Retorno NUMERIC(30,2);
DECLARE SaldoAnterior NUMERIC(30,2) DEFAULT 0;
DECLARE Creditos NUMERIC(30,2) DEFAULT 0;
DECLARE Debitos NUMERIC(30,2) DEFAULT 0;
Declare Periodo NUMERIC(20);
begin
IF(mes=1) then
Set Periodo = '01/01/' + cast(ano as varchar(4));
else
Set Periodo = '01/' + right ('00' + rtrim(cast(mes - 0 as varchar(2))), 2) + '/' + cast (ano as varchar(4));
End if
End
Set SaldoAnterior =
(
Select
Sum
(
Case
When
Cast('S' As varchar) = 'S'
Then
Case
When
T_9.T_C_14_9 < Cast( Periodo As datetime)
Then
Case
When
T_9.T_C_21_9 = 'C'
Then
Coalesce(T_9.T_C_9_9, 0)
Else
Coalesce( -1 * T_9.T_C_9_9, 0)
End
Else
0
End
Else
0
End
)
From
G_8
Inner Join T_8_1 On G_8.G_ID_8 = T_8_1.G_ID_8
Inner Join T_9 On T_8_1.T_ID_8_1 = T_9.T_ID_8_1
Where
T_8_1.T_C_8_8_1 = 'A'
And
T_9.G_ID_0 = empresa
);
if mes <> -1
begin
Set Creditos =
(
Select
Sum
(
Case When Month(T_9.T_C_14_9) = mes Then Coalesce(T_9.T_C_9_9, 0)
Else 0 End
)
From
T_3_5
Left Join T_9 On T_9.T_ID_3_5 = T_3_5.T_ID_3_5 And Year(T_9.T_C_14_9) = ano
Where
T_3_5.T_C_4_3_5 = 'C'
And
T_3_5.G_ID_0 = empresa
);
Set Debitos =
(
Select
Sum
(
Case When Month(T_9.T_C_14_9) = mes Then Coalesce(T_9.T_C_9_9, 0)
Else 0 End
)
From
T_3_5
Left Join T_9 On T_9.T_ID_3_5 = T_3_5.T_ID_3_5 And Year(T_9.T_C_14_9) = ano
Where
T_3_5.T_C_4_3_5 = 'D'
And
T_3_5.G_ID_0 = empresa
);
end;
Set Retorno = SaldoAnterior + Creditos - Debitos;
RETURN Retorno;
END $$

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma conta ou entre para comentar

Você precisar ser um membro para fazer um comentário

Criar uma conta

Crie uma nova conta em nossa comunidade. É fácil!

Crie uma nova conta

Entrar

Já tem uma conta? Faça o login.

Entrar Agora
Entre para seguir isso  

  • Conteúdo Similar

    • Por Caio_Lourençon
      Olá estou desenvolvendo um projeto utilizando a extensão MySQLi, e nisso aproveitando para utilizar algumas funções orientada a objeto! Gostaria de tirar umas dúvidas em relação a listagem de dados, são duas perguntas:   1) Utilizar a função foreach() ao invés de um while() com a função fetch_array() dentro, tem uma listagem mais rápida ou mais lenta? Pois com ambas consigo trazer os dados, No momento estou utilizando a foreach por ser mais rápida de se digitar.
      2) Utilizo muitas listagens de tabelas diferentes na mesma página sempre chamando um novo SELECT, seria melhor criar uma função com um SELECT dentro para eu sempre reutiliza-lá ou não iria mudar muita coisa em questão de desempenho?
       
      Agradeço qualquer informação.
    • Por Gustavo2503
      Eu estou criando uma classe que cria modais usando React, eu preciso criar um modal dentro de um modal, para isso, eu quero chamar a mesma função dentro dela mesma. O modal é criado, mas o problema é que ele não abre, abre o modal principal (#modal-1), mas não abre o sub modal (#modal-2), veja como ficou meu código:
      index.html
      <!DOCTYPE html> <html lang="pt-br"> <head> <meta charset="UTF-8"> <meta name="viewport" content="width=device-width, initial-scale=1.0"> <meta http-equiv="X-UA-Compatible" content="ie=edge"> <title>Modal</title> <script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script> <link href="https://fonts.googleapis.com/css?family=Open+Sans" rel="stylesheet"> <link href="https://fonts.googleapis.com/icon?family=Material+Icons" rel="stylesheet"> <script crossorigin src="https://unpkg.com/react@16/umd/react.development.js"></script> <script crossorigin src="https://unpkg.com/react-dom@16/umd/react-dom.development.js"></script> <script src="https://unpkg.com/babel-standalone@6.15.0/babel.min.js"></script> <script src="js/modal.js" type="text/babel"></script> <link rel="stylesheet" href="css/modal.css"> </head> <body> <div align="center"> <h1>Modal</h1> </div> <button type="button" data-modal="modal-1">Open Modal</button> <div id="modal-content"></div> <script type="text/babel"> const contentSub = [ <h2>Title SubModal 1</h2>, <p>SubModal</p>, <small>Rodapé submodal 1</small> ]; const idSub = "modal-2"; const content = [ <h2>Title 1</h2>, <section> <button type="button" data-modal="modal-2">Open SubModal</button> <Modal id={idSub} content={contentSub}/> </section>, <small>Rodapé 1</small> ]; const id = "modal-1"; ReactDOM.render( <Modal id={id} content={content}/>, document.getElementById('modal-content') ); </script> </body> </html> js/modal.js
      class Modal extends React.Component{ constructor(props) { super(props); this.id = this.props.id; this.backgroudColorHeader = this.props.backgroudColorHeader === undefined ? 'rgba(103, 117, 240, 1)' : this.props.backgroudColorHeader; this.textColorHeader = this.props.textColorHeader === undefined ? '#fff' : this.props.textColorHeader; this.backgroudColorBody = this.props.backgroudColorBody === undefined ? 'rgba(255, 255, 255, 1)' : this.props.backgroudColorBody; this.textColorBody = this.props.textColorBody === undefined ? '#000' : this.props.textColorBody; this.backgroudColorFooter = this.props.backgroudColorFooter === undefined ? 'rgba(103, 117, 240, 1)' : this.props.backgroudColorFooter; this.textColorFooter = this.props.textColorFooter === undefined ? '#fff' : this.props.textColorFooter; this.borderRadius = this.props.borderRadius === undefined ? '8px' : this.props.borderRadius; this.content = this.props.content === undefined ? [<h2>header content</h2>, <p>body content</p>, <p>footer content</p>] : this.props.content; this.size = this.props.size === undefined ? 3 : this.props.size; } closeModal = () => { $('#'+this.id).removeClass("show"); $('body').removeClass("overflow-hidden"); }; render(){ $(`[data-modal]`).click( function () { var id = $(this).attr("data-modal"); var el = document.getElementById(id); $(el).addClass("show"); $('body').addClass("overflow-hidden"); }); var background, text; background = this.backgroudColorHeader; text = this.textColorHeader; const transparencyBackgroundHeader = background.substring(background.length-2,background.length-1) -.1; const backgroundColorHeader = `${background.substring(0,background.length-2)}${transparencyBackgroundHeader})`; const styleColorHeader = { backgroundColor: backgroundColorHeader, color: text, borderBottom: `1px solid ${background}` }; background = this.backgroudColorBody; text = this.textColorBody; const styleColorBody = { backgroundColor: background, color: text }; background = this.backgroudColorFooter; text = this.textColorFooter; const transparencyBackgroundFooter = background.substring(background.length-2,background.length-1) -.1; const backgroundColorFooter = `${background.substring(0,background.length-2)}${transparencyBackgroundFooter})`; const styleColorFooter = { backgroundColor: backgroundColorFooter, color: text, borderTop: `1px solid ${background}` }; const styleBorderRadius = {borderRadius: this.borderRadius}; const eDivision = ['h', 'b', 'f']; const eContent = this.content; var div = []; for (var i=0;i<eContent.length;i++){ const part = eDivision[i].replace('h', 'header').replace('b', 'body').replace('f', 'footer')+"-modal"; const closeModal = i === 0 ? <span onClick={this.closeModal} className="close-modal"><i className="material-icons">close</i></span> : "" ; var style; if (i===0) style = styleColorHeader; else if (i===1) style = styleColorBody; else style = styleColorFooter; div.push(<div key={i+1} className={part} style={style}> {closeModal} {eContent[i]} </div>); } const eSize = this.size; const s = ['s', 'm-s', 'm', 'm-l', 'l']; const size = s[eSize-1]; const classModal = (size !== "s" && size !== "m-s" && size !== "m" && size !== "m-l" && size !== "l") ? 'modal-modal modal-m' : "modal-modal modal-"+size; return <div id={this.id} className={classModal}> <div className="overflow-modal"> <div className="container-modal" style={styleBorderRadius}> {div} </div> </div> </div>; } }  
    • Por PeeWee
      Estou há horas com um problema no meu código, tenho a pagina Auth.php onde há algumas function que funcionam normalmente, porém a seguinte apresenta problemas.
      function getMemberNivel($nivel) {
              $db_handle = new DBController();
              $query = "Select * from members where nivel = ?";
              $result = $db_handle->runQuery($query, 's', array($nivel));
              return $result;
          }
       
      Na Index.php faço a chamada dela da seguinte forma:
       
      $teste = $auth->getMemberByUsername($nivel);
       
      Ocorre que preciso utilizar a variavel $teste, só que exibe erro como se a variavel nao existisse. As demais variaveis vindas da pagina funcionam normalmente. 
      Espero que algum dos colegas possa me ajudar. 
    • Por camargo.2018
      Tou com um erro no meu script e não sei identificar erra pra ele exibir a imagem do usuário mas isso não está acontecendo
       
      Error:

       
      funcao.php:
      function ver_avatar($nick){ include 'str_get_html.php'; $url = "http://pt.clubcooee.com/users/view/".$nick; $ch = curl_init(); curl_setopt($ch, CURLOPT_URL, $url); curl_setopt($ch, CURLOPT_USERAGENT, 'Mozilla/4.0 (compatible; MSIE 5.01; Windows NT 5.0)'); curl_setopt($ch, CURLOPT_RETURNTRANSFER, 1); curl_setopt($ch, CURLOPT_CONNECTTIMEOUT, 15); curl_setopt($ch, CURLOPT_TIMEOUT, 15); $return = curl_exec($ch); curl_close($ch); $html = str_get_html($return); $res = $html->find('.m33 img'); $imgLink = $res[0]->attr['src']; return $imgLink; } str_get_html.php:
      <?php function str_get_html($str, $lowercase=true, $forceTagsClosed=true, $target_charset = DEFAULT_TARGET_CHARSET, $stripRN=true, $defaultBRText=DEFAULT_BR_TEXT, $defaultSpanText=DEFAULT_SPAN_TEXT) { $dom = new simple_html_dom(null, $lowercase, $forceTagsClosed, $target_charset, $stripRN, $defaultBRText, $defaultSpanText); if (empty($str) || strlen($str) > MAX_FILE_SIZE) { $dom->clear(); return false; } $dom->load($str, $lowercase, $stripRN); return $dom; } ?> menu.php:
      <div class="usr-nav"> <img src="<?php $veavt = ver_avatar($usr); echo $veavt; ?>" class="img-usr"> <p class="name-usr">Nome do Usuário</p> </div>  
      Me Ajudem mas rápido possível pfvrrrr
    • Por camargo.2018
      Não faz upload de jeito nenhum esse e o código que tentei (Pfvr me ajuda :D):
       
      Html:
      <div class="conteudo">     <form enctype="multipart/form-data" action="?pag=upload-programetes" method="POST">     <input type="hidden" name="MAX_FILE_SIZE" value="999999999999999" />     Enviar novos Programetes: <input name="userfile" type="file" />     <input type="submit" value="Enviar arquivo" /> </form></div> Php:
      if($_GET['pag'] == "upload-programetes"){ $upload = upload_programetes($_FILES); echo $upload; } função:
      function upload_programetes($up){ $uploaddir = $_SERVER["DOCUMENT_ROOT"].'/programetes/'; $uploadfile = $uploaddir . basename($up['userfile']['name']); if (move_uploaded_file($up['userfile']['tmp_name'], $uploadfile)) {     return "Arquivo válido e enviado com sucesso.\n"; } else {     return "Possível ataque de upload de arquivo!\n"; } }  
×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.