Commit 45dc40c3c4e6817904c474e0575b673eb8063364

Authored by Guilherme Andrade Del Cantoni
1 parent 01b8263f

Correção de script de atualização do módulo na base Oracle

Showing 2 changed files with 92 additions and 90 deletions   Show diff stats
bd/PenMetaBD.php
... ... @@ -326,7 +326,7 @@ class PenMetaBD extends InfraMetaBD {
326 326 return $this;
327 327 }
328 328  
329   - public function adicionarChaveEstrangeira($strNomeFK, $strTabela, $arrCampos, $strTabelaOrigem, $arrCamposOrigem, $bolCriarIndice = true) {
  329 + public function adicionarChaveEstrangeira($strNomeFK, $strTabela, $arrCampos, $strTabelaOrigem, $arrCamposOrigem, $bolCriarIndice=false) {
330 330  
331 331 if(!$this->isChaveExiste($strTabela, $strNomeFK)) {
332 332 parent::adicionarChaveEstrangeira($strNomeFK, $strTabela, $arrCampos, $strTabelaOrigem, $arrCamposOrigem, $bolCriarIndice);
... ...
rn/PenAtualizarSeiRN.php
... ... @@ -1283,96 +1283,98 @@ class PenAtualizarSeiRN extends PenAtualizadorRN {
1283 1283 $objInfraMetaBD->criarIndice('md_pen_rel_doc_map_recebido', 'ak1_rel_doc_map_recebido', array('codigo_especie'), true);
1284 1284  
1285 1285 //30 - Correção de erros de chave duplicada devido a concorrência de transações
1286   - $objInfraSequenciaRN = new InfraSequenciaRN();
1287   - $objInfraSequenciaDTO = new InfraSequenciaDTO();
1288   -
1289   - //Sequência: md_pen_seq_procedimento_andam
1290   - $rs = BancoSEI::getInstance()->consultarSql('select max(id_andamento) as total from md_pen_procedimento_andamento');
1291   - $numMaxId = $rs[0]['total'];
1292   - if ($numMaxId==null){
1293   - $numMaxId = 0;
1294   - }
1295   - BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_procedimento_andam', $numMaxId + 1);
1296   - $objInfraSequenciaDTO->setStrNome('md_pen_procedimento_andamento');
1297   - $objInfraSequenciaDTO->retStrNome();
1298   - $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
1299   - $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1300   -
1301   -
1302   - //Sequência: md_pen_seq_hipotese_legal
1303   - $rs = BancoSEI::getInstance()->consultarSql('select max(id_hipotese_legal) as total from md_pen_hipotese_legal');
1304   - $numMaxId = $rs[0]['total'];
1305   - if ($numMaxId==null){
1306   - $numMaxId = 0;
1307   - }
1308   - BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_hipotese_legal', $numMaxId + 1);
1309   - $objInfraSequenciaDTO->setStrNome('md_pen_hipotese_legal');
1310   - $objInfraSequenciaDTO->retStrNome();
1311   - $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
1312   - $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1313   -
1314   -
1315   - //Sequência: md_pen_seq_rel_hipotese_legal
1316   - $rs = BancoSEI::getInstance()->consultarSql('select max(id_mapeamento) as total from md_pen_rel_hipotese_legal');
1317   - $numMaxId = $rs[0]['total'];
1318   - if ($numMaxId==null){
1319   - $numMaxId = 0;
1320   - }
1321   - BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_rel_hipotese_legal', $numMaxId + 1);
1322   - $objInfraSequenciaDTO->setStrNome('md_pen_rel_hipotese_legal');
1323   - $objInfraSequenciaDTO->retStrNome();
1324   - $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
1325   - $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1326   -
1327   -
1328   - //Sequência: md_pen_seq_recibo_tramite_hash
1329   - $rs = BancoSEI::getInstance()->consultarSql('select max(id_tramite_hash) as total from md_pen_recibo_tramite_hash');
1330   - $numMaxId = $rs[0]['total'];
1331   - if ($numMaxId==null){
1332   - $numMaxId = 0;
1333   - }
1334   - BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_recibo_tramite_hash', $numMaxId + 1);
1335   - $objInfraSequenciaDTO->setStrNome('md_pen_recibo_tramite_hash');
1336   - $objInfraSequenciaDTO->retStrNome();
1337   - $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
1338   - $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1339   -
1340   - //Sequência: md_pen_seq_rel_doc_map_enviado
1341   - $rs = BancoSEI::getInstance()->consultarSql('select max(id_mapeamento) as total from md_pen_rel_doc_map_enviado');
1342   - $numMaxId = $rs[0]['total'];
1343   - if ($numMaxId==null){
1344   - $numMaxId = 0;
1345   - }
1346   - BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_rel_doc_map_enviado', $numMaxId + 1);
1347   - $objInfraSequenciaDTO->setStrNome('md_pen_rel_doc_map_enviado');
1348   - $objInfraSequenciaDTO->retStrNome();
1349   - $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
1350   - $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1351   -
1352   - //Sequência: md_pen_seq_rel_doc_map_recebid
1353   - $rs = BancoSEI::getInstance()->consultarSql('select max(id_mapeamento) as total from md_pen_rel_doc_map_recebido');
1354   - $numMaxId = $rs[0]['total'];
1355   - if ($numMaxId==null){
1356   - $numMaxId = 0;
1357   - }
1358   - BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_rel_doc_map_recebid', $numMaxId + 1);
1359   - $objInfraSequenciaDTO->setStrNome('md_pen_rel_doc_map_recebido');
1360   - $objInfraSequenciaDTO->retStrNome();
1361   - $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
1362   - $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1363   -
1364   -
1365   - //Sequência: md_pen_seq_tramite_pendente
1366   - $rs = BancoSEI::getInstance()->consultarSql('select max(id) as total from md_pen_tramite_pendente');
1367   - $numMaxId = $rs[0]['total'];
1368   - if ($numMaxId==null){
1369   - $numMaxId = 0;
  1286 + if(!(BancoSEI::getInstance() instanceof InfraOracle)){
  1287 + $objInfraSequenciaRN = new InfraSequenciaRN();
  1288 + $objInfraSequenciaDTO = new InfraSequenciaDTO();
  1289 +
  1290 + //Sequência: md_pen_seq_procedimento_andam
  1291 + $rs = BancoSEI::getInstance()->consultarSql('select max(id_andamento) as total from md_pen_procedimento_andamento');
  1292 + $numMaxId = $rs[0]['total'];
  1293 + if ($numMaxId==null){
  1294 + $numMaxId = 0;
  1295 + }
  1296 + BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_procedimento_andam', $numMaxId + 1);
  1297 + $objInfraSequenciaDTO->setStrNome('md_pen_procedimento_andamento');
  1298 + $objInfraSequenciaDTO->retStrNome();
  1299 + $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
  1300 + $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
  1301 +
  1302 +
  1303 + //Sequência: md_pen_seq_hipotese_legal
  1304 + $rs = BancoSEI::getInstance()->consultarSql('select max(id_hipotese_legal) as total from md_pen_hipotese_legal');
  1305 + $numMaxId = $rs[0]['total'];
  1306 + if ($numMaxId==null){
  1307 + $numMaxId = 0;
  1308 + }
  1309 + BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_hipotese_legal', $numMaxId + 1);
  1310 + $objInfraSequenciaDTO->setStrNome('md_pen_hipotese_legal');
  1311 + $objInfraSequenciaDTO->retStrNome();
  1312 + $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
  1313 + $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
  1314 +
  1315 +
  1316 + //Sequência: md_pen_seq_rel_hipotese_legal
  1317 + $rs = BancoSEI::getInstance()->consultarSql('select max(id_mapeamento) as total from md_pen_rel_hipotese_legal');
  1318 + $numMaxId = $rs[0]['total'];
  1319 + if ($numMaxId==null){
  1320 + $numMaxId = 0;
  1321 + }
  1322 + BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_rel_hipotese_legal', $numMaxId + 1);
  1323 + $objInfraSequenciaDTO->setStrNome('md_pen_rel_hipotese_legal');
  1324 + $objInfraSequenciaDTO->retStrNome();
  1325 + $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
  1326 + $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
  1327 +
  1328 +
  1329 + //Sequência: md_pen_seq_recibo_tramite_hash
  1330 + $rs = BancoSEI::getInstance()->consultarSql('select max(id_tramite_hash) as total from md_pen_recibo_tramite_hash');
  1331 + $numMaxId = $rs[0]['total'];
  1332 + if ($numMaxId==null){
  1333 + $numMaxId = 0;
  1334 + }
  1335 + BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_recibo_tramite_hash', $numMaxId + 1);
  1336 + $objInfraSequenciaDTO->setStrNome('md_pen_recibo_tramite_hash');
  1337 + $objInfraSequenciaDTO->retStrNome();
  1338 + $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
  1339 + $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
  1340 +
  1341 + //Sequência: md_pen_seq_rel_doc_map_enviado
  1342 + $rs = BancoSEI::getInstance()->consultarSql('select max(id_mapeamento) as total from md_pen_rel_doc_map_enviado');
  1343 + $numMaxId = $rs[0]['total'];
  1344 + if ($numMaxId==null){
  1345 + $numMaxId = 0;
  1346 + }
  1347 + BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_rel_doc_map_enviado', $numMaxId + 1);
  1348 + $objInfraSequenciaDTO->setStrNome('md_pen_rel_doc_map_enviado');
  1349 + $objInfraSequenciaDTO->retStrNome();
  1350 + $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
  1351 + $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
  1352 +
  1353 + //Sequência: md_pen_seq_rel_doc_map_recebid
  1354 + $rs = BancoSEI::getInstance()->consultarSql('select max(id_mapeamento) as total from md_pen_rel_doc_map_recebido');
  1355 + $numMaxId = $rs[0]['total'];
  1356 + if ($numMaxId==null){
  1357 + $numMaxId = 0;
  1358 + }
  1359 + BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_rel_doc_map_recebid', $numMaxId + 1);
  1360 + $objInfraSequenciaDTO->setStrNome('md_pen_rel_doc_map_recebido');
  1361 + $objInfraSequenciaDTO->retStrNome();
  1362 + $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
  1363 + $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
  1364 +
  1365 +
  1366 + //Sequência: md_pen_seq_tramite_pendente
  1367 + $rs = BancoSEI::getInstance()->consultarSql('select max(id) as total from md_pen_tramite_pendente');
  1368 + $numMaxId = $rs[0]['total'];
  1369 + if ($numMaxId==null){
  1370 + $numMaxId = 0;
  1371 + }
  1372 + BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_tramite_pendente', $numMaxId + 1);
  1373 + $objInfraSequenciaDTO->setStrNome('md_pen_tramite_pendente');
  1374 + $objInfraSequenciaDTO->retStrNome();
  1375 + $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
  1376 + $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1370 1377 }
1371   - BancoSEI::getInstance()->criarSequencialNativa('md_pen_seq_tramite_pendente', $numMaxId + 1);
1372   - $objInfraSequenciaDTO->setStrNome('md_pen_tramite_pendente');
1373   - $objInfraSequenciaDTO->retStrNome();
1374   - $arrObjInfraSequenciaDTO = $objInfraSequenciaRN->listar($objInfraSequenciaDTO);
1375   - $objInfraSequenciaRN->excluir($arrObjInfraSequenciaDTO);
1376 1378  
1377 1379 //Fix 28 - Erro Data too long for column 'nome' at row 1
1378 1380 $objInfraMetaBD->alterarColuna('md_pen_componente_digital','nome', $objInfraMetaBD->tipoTextoVariavel(255), 'not null');
... ...