/** * Retorna dados Basicos Referentes a Parcela de Débito * * @param mixed $iNumpre * @param mixed $iNumpar * @static * @access public * @return stdClass */ public static function getMensagensParcela($iNumpre, $iNumpar, $dDataEmissao) { $oRetorno = new stdClass(); $oRetorno->sMensagemContribuinte = ""; $oRetorno->sMensagemCaixa = ""; /** * Para Buscar valor deve-se implentar busca na função debitos_numpre */ $sSql = "select distinct "; if (!empty($iNumpar)) { $sSql .= " k00_dtvenc, "; } $sSql .= " k00_msguni, "; $sSql .= " k00_msguni2, "; $sSql .= " k00_msgparc, "; $sSql .= " k00_msgparc2, "; $sSql .= " k00_msgparcvenc, "; $sSql .= " k00_msgparcvenc2, "; $sSql .= " arrecad.k00_tipo "; $sSql .= " from arrecad "; $sSql .= " inner join arretipo on arrecad.k00_tipo = arretipo.k00_tipo "; $sSql .= " where k00_numpre = {$iNumpre} "; if (!empty($iNumpar)) { $sSql .= " AND k00_numpar = {$iNumpar} "; } $rsSql = db_query($sSql); if (!$rsSql) { throw new DBException("Erro ao Buscar os Dados da Parcela. Descrição do Erro:" . pg_last_error()); } $oDadosDebito = db_utils::fieldsMemory($rsSql, 0); if (empty($iNumpar)) { $oRetorno->sMensagemContribuinte = $oDadosDebito->k00_msguni2; $oRetorno->sMensagemCaixa = $oDadosDebito->k00_msguni; return $oRetorno; } $oDataVencimentoDebito = new DBDate($oDadosDebito->k00_dtvenc); $oDataEmissao = new DBDate($dDataEmissao); if ($oDataEmissao->getTimeStamp() > $oDataVencimentoDebito->getTimeStamp()) { $oRetorno->sMensagemContribuinte = $oDadosDebito->k00_msgparc; $oRetorno->sMensagemCaixa = $oDadosDebito->k00_msgparc2; return $oRetorno; } $oRetorno->sMensagemContribuinte = $oDadosDebito->k00_msgparcvenc; $oRetorno->sMensagemCaixa = $oDadosDebito->k00_msgparcvenc2; return $oRetorno; }
function gerarIssqnVariavelComplementar(DBDate $oDataVencimento, $iReceitaDebito = 0, $vt = array(), $q02_inscr = null, $iNumCgm = null, $sTipo = 'P') { $errocompl = false; if ($this->q05_histor == "" and $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 = split("#", $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 = split("#", $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) { $clarrecad = new cl_arrecad(); $resultpar = db_query("select * from parissqn"); $q60_tipo = pg_result($resultpar, 0, "q60_tipo"); $q60_receit = pg_result($resultpar, 0, "q60_receit"); $q60_codvencvar = pg_result($resultpar, 0, "q60_codvencvar"); if (!empty($iReceitaDebito)) { $q60_receit = $iReceitaDebito; } $clarrecad->k00_receit = $q60_receit; if ($sTipo == 'P') { $clarrecad->k00_tipo = $q60_tipo; } else { $rsConfPlan = db_query("select w10_tipo from db_confplan"); $w10_tipo = pg_result($rsConfPlan, 0, 'w10_tipo'); $clarrecad->k00_tipo = $w10_tipo; } $sqlvenc = "select q82_venc,q82_hist from cadvenc where q82_codigo = {$q60_codvencvar} and q82_parc = " . $this->q05_mes; $resultvenc = db_query($sqlvenc); $q82_venc = pg_result($resultvenc, 0, "q82_venc"); $q82_hist = pg_result($resultvenc, 0, "q82_hist"); $clarrecad->k00_hist = $q82_hist; if ($this->q05_ano == db_getsession("DB_anousu")) { $clarrecad->k00_dtvenc = $oDataVencimento->getDate(DBDate::DATA_EN); //"$q82_venc"; } else { $res = db_query("select * from db_confplan"); if (pg_num_rows($res) > 0) { $w10_dia = pg_result($res, 0, "w10_dia"); } 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; $clarrecad->k00_dtvenc = $oDataVencimento->getDate(DBDate::DATA_EN); //"$venc_arrecad"; } if ($iNumCgm != null) { $iCgm = $iNumCgm; } else { $iCgm = $z01_numcgm; } $clarrecad->k00_numcgm = $iCgm; $clarrecad->k00_dtoper = $clarrecad->k00_dtvenc; $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->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); } else { $this->erro_status = "0"; return false; } if ($sTipo == 'T' && !$errocompl) { if (!class_exists('cl_issplan')) { $this->erro_status = "0"; $this->erro_msg = "Classe issplan não definida!"; return false; } $rsCgm = db_query("select * from cgm where z01_numcgm = {$iCgm}"); $sNomeCgm = pg_result($rsCgm, 0, 'z01_nome'); $sFoneCgm = pg_result($rsCgm, 0, 'z01_telef'); $clissplan = new cl_issplan(); $clissplan->q20_ano = $this->q05_ano; $clissplan->q20_mes = $this->q05_mes; $clissplan->q20_numcgm = $iCgm; $clissplan->q20_nomecontri = addslashes($sNomeCgm); $clissplan->q20_fonecontri = $sFoneCgm; $clissplan->q20_numbco = ''; $clissplan->q20_numpre = $this->q05_numpre; $clissplan->q20_situacao = 1; $clissplan->incluir(null); if ($clissplan->erro_status == 0) { $this->erro_status = "0"; $this->erro_msg = "IssPlan - " . $clissplan->erro_msg; return false; } if (!class_exists('cl_issplannumpre')) { $this->erro_status = "0"; $this->erro_msg = "Classe issplannumpre não definida!"; return false; } $clissplannumpre = new cl_issplannumpre(); $clissplannumpre->q32_dataop = date('Y-m-d', db_getsession('DB_datausu')); $clissplannumpre->q32_horaop = db_hora(); $clissplannumpre->q32_numpre = $this->q05_numpre; $clissplannumpre->q32_planilha = $clissplan->q20_planilha; $clissplannumpre->q32_status = 1; $clissplannumpre->incluir(null); if ($clissplannumpre->erro_status == 0) { $this->erro_status = "0"; $this->erro_msg = "IssPlanNumpre - " . $clissplannumpre->erro_msg; return false; } } }