/** * Inclui ISSQN Retido utilizado pelo nfse * * @param array $vt * @param null $q02_inscr * @param null $iNumCgm * @return bool */ function incluir_issvar_dms($vt = array(), $q02_inscr = null, $iNumCgm = null) { $errocompl = false; if ($this->q05_histor == '' && $vt != '') { reset($vt); $ta = sizeof($vt); $vir = ''; $this->q05_histor = 'REFERENTE NOTAS FISCAIS No.:'; for ($i = 0; $i < $ta; $i++) { $chave = key($vt); if (substr($chave, 0, 6) == 'linha_') { $sqlerro = false; $matri = explode('#', $vt[$chave]); $this->q05_histor .= $vir . $matri[0]; $vir = ','; } $proximo = next($vt); } } $this->incluir(null); if ($this->erro_status == '0') { $this->erro_msg; $errocompl = true; } $codigo = $this->q05_codigo; if ($errocompl == false and $vt != '') { $clissvarnotas = new cl_issvarnotas(); reset($vt); $ta = sizeof($vt); for ($i = 0; $i < $ta; $i++) { $chave = key($vt); if (substr($chave, 0, 6) == 'linha_') { $matri = explode('#', $vt[$chave]); $sql = "select max(q06_seq) +1 as seq from issvarnotas where issvarnotas.q06_codigo = {$codigo}"; $result55 = db_query($sql); $seq = pg_result($result55, 0, 'seq'); $q06_seq = $seq == '' ? '1' : $seq; $clissvarnotas->q06_codigo = $codigo; $clissvarnotas->q06_seq = $q06_seq; $clissvarnotas->q06_nota = $matri[0]; $clissvarnotas->q06_valor = $matri[1]; $clissvarnotas->incluir($codigo, $q06_seq); if ($clissvarnotas->erro_status == '0') { $errocompl = true; $this->erro_msg = $clissvarnotas->erro_msg; } } $proximo = next($vt); } } if ($errocompl == false && $q02_inscr != '') { $clarreinscr = new cl_arreinscr(); $clarreinscr->k00_numpre = $this->q05_numpre; $clarreinscr->k00_inscr = $q02_inscr; $clarreinscr->k00_perc = 100; // exclui se ja existir, senão da duplicate key $clarreinscr->excluir($this->q05_numpre, $q02_inscr); $clarreinscr->k00_perc = 100; $clarreinscr->incluir($this->q05_numpre, $q02_inscr); if ($clarreinscr->erro_status == '0') { $errocompl = true; $this->erro_msg = $clarreinscr->erro_msg; } else { $resultcgm = db_query("select q02_numcgm as z01_numcgm from issbase where q02_inscr = {$q02_inscr}"); $z01_numcgm = pg_result($resultcgm, 0, "z01_numcgm"); } } else { $z01_numcgm = $vt['z01_numcgm']; } if ($errocompl == false) { $rsConfPlan = db_query('select * from db_confplan'); if (pg_num_rows($rsConfPlan) > 0) { $w10_dia = pg_result($rsConfPlan, 0, "w10_dia"); $w10_tipo = pg_result($rsConfPlan, 0, 'w10_tipo'); $w10_hist = pg_result($rsConfPlan, 0, 'w10_hist'); $w10_receit = pg_result($rsConfPlan, 0, 'w10_receit'); } else { $errocompl = true; $this->erro_msg = 'Tabela db_confplan vazia!'; } $qmes = $this->q05_mes; $qano = $this->q05_ano; $qmes += 1; if ($qmes > 12) { $qmes = 1; $qano += 1; } $qmes = str_pad($qmes, 2, '0', STR_PAD_LEFT); $venc_arrecad = "{$qano}-{$qmes}-{$w10_dia}"; if ($iNumCgm != null) { $iCgm = $iNumCgm; } else { $iCgm = $z01_numcgm; } $clarrecad = new cl_arrecad(); $clarrecad->k00_numcgm = $iCgm; $clarrecad->k00_dtvenc = $venc_arrecad; $clarrecad->k00_dtoper = $venc_arrecad; $clarrecad->k00_valor = $this->q05_valor; $clarrecad->k00_numpre = $this->q05_numpre; $clarrecad->k00_numtot = 1; $clarrecad->k00_numpar = $this->q05_mes; $clarrecad->k00_numdig = '0'; $clarrecad->k00_tipojm = '0'; $clarrecad->k00_tipo = $w10_tipo; $clarrecad->k00_hist = $w10_hist; $clarrecad->k00_receit = $w10_receit; $clarrecad->incluir(); if ($clarrecad->erro_status == '0') { $errocompl = true; $this->erro_msg = "Arrecad - {$clarrecad->erro_msg}"; } } if ($errocompl == false) { $this->erro_msg = 'Inclusão efetuada com sucesso!'; $this->q05_valor = ''; $this->q05_bruto = ''; unset($this->q05_histor); unset($q06_nota); unset($q06_valor); return true; } else { $this->erro_status = '0'; return false; } }
function db_anulaPlanilha($planilha, $motivo, $ip) { $clissplananula = new cl_issplananula(); $clissplan = new cl_issplan(); $clarrecad = new cl_arrecad(); $clcancdebitos = new cl_cancdebitos(); $data = date("Y-m-d"); $hora = date("H:i"); $usuario = db_getsession("id"); if ($usuario == "") { $usuario = 1; } $sql = "select * from issplan where q20_planilha = {$planilha}"; $result = pg_query($sql); $linhas = pg_num_rows($result); if ($linhas > 0) { $q20_numpre = pg_result($result, 0, "q20_numpre"); } $sqlerro = false; db_inicio_transacao(); //gravar na issplananula: os dados da anulação $clissplananula->q76_planilha = $planilha; $clissplananula->q76_data = $data; $clissplananula->q76_hora = $hora; $clissplananula->q76_motivo = "Planilha anulada DBPref. " . $motivo; $clissplananula->q76_ip = $ip; $clissplananula->q76_id_usuario = $usuario; $clissplananula->incluir(null); if ($clissplananula->erro_status == 0) { $sqlerro = true; //die($clissplananula->erro_sql); $erro_msg = $clissplananula->erro_msg; } //alterar a situação da issplan para anulada $clissplan->q20_planilha = $planilha; $clissplan->q20_situacao = 5; $clissplan->alterar($planilha); if ($clissplan->erro_status == 0) { $sqlerro = true; $erro_msg = $clissplan->erro_msg; } if ($q20_numpre > 0) { //gravar na cancdebitos, cancdebitosreg, cancdebitosproc, cancdebitosprocreg $sqltipo = "select w10_tipo from db_confplan "; $resulttipo = pg_query($sqltipo); $linhastipo = pg_num_rows($resulttipo); if ($linhastipo > 0) { //db_fieldsmemory($resulttipo,0); $w10_tipo = pg_result($resulttipo, 0, "w10_tipo"); } else { $sqlerro = true; $erro_msg = "Deve-se configurar a planilha (db_confplan)"; } $clcancdebitos->k20_descr = "anulação de planilha no dbpref."; $clcancdebitos->k20_hora = $hora; $clcancdebitos->k20_data = $data; $clcancdebitos->k20_usuario = $usuario; $clcancdebitos->k20_instit = db_getsession("DB_instit"); $clcancdebitos->numpre = $q20_numpre; $clcancdebitos->numpar = 1; $clcancdebitos->k21_obs = "Planilha anulada DBPref. " . $motivo; $clcancdebitos->usuario = $usuario; $clcancdebitos->tipo = $w10_tipo; $clcancdebitos->planilha = $planilha; $clcancdebitos->incluir_cancelamento(true); if ($clcancdebitos->erro_status == "0") { $sqlerro = true; $erro_msg = $clcancdebitos->erro_msg; } //grava na cancdebitosissplan //deletar da arrecad e gravar na arrecant $clarrecad->excluir_arrecad_inc_arrecant($q20_numpre, 1, true); if ($clarrecad->erro_status == 0) { $sqlerro = true; $erro_msg = $clarrecad->erro_msg; } } db_fim_transacao($sqlerro); return $sqlerro; }
include "libs/db_stdlib.php"; include "libs/db_sql.php"; include "dbforms/db_funcoes.php"; include "classes/db_arrecad_classe.php"; include "classes/db_arreold_classe.php"; include "classes/db_issplannumpre_classe.php"; include "classes/db_cairetordem_classe.php"; include "classes/db_issvar_classe.php"; include "classes/db_issplannumpreissplanit_classe.php"; parse_str($HTTP_SERVER_VARS["QUERY_STRING"]); postmemory($HTTP_POST_VARS); $clquery = new cl_query(); $cl_issvar = new cl_issvar(); $cl_arreold = new cl_arreold(); $cl_issplannumpre = new cl_issplannumpre(); $cl_arrecad = new cl_arrecad(); $cl_cairetordem = new cl_cairetordem(); $cl_issplannumpreissplanit = new cl_issplannumpreissplanit(); $q24_inscr = 0; $clquery->sql_query("db_confplan", " * ", "", ""); $clquery->sql_record($clquery->sql); if (pg_numrows($clquery->result) == 0) { echo "<script>window.close();window.opener.alert('Não é possivel gerar recibo. Por favor, contate com a prefeitura.');window.opener.location.href='digitaissqn.php'</script>"; exit; } db_fieldsmemory($clquery->result, 0); if (!isset($dados_recibo)) { // ################### SE FOR EMITE RECIBO ####################################### // die(" emite "); //$mes = 0; //$ano = 0;