Registrazione contabile bulk
This commit is contained in:
parent
e02b1f812d
commit
854c3255dc
|
@ -166,136 +166,6 @@ switch (post('op')) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
break;
|
break;
|
||||||
|
|
||||||
case 'registra-contabile':
|
|
||||||
//Generazione della descrizione del movimento
|
|
||||||
$rs_fatture = $dbo->fetchArray('SELECT *, co_documenti.id AS id, co_documenti.data AS data_doc FROM co_documenti INNER JOIN co_tipidocumento ON co_documenti.idtipodocumento=co_tipidocumento.id WHERE co_documenti.id IN('.implode(',', $id_records).") AND idstatodocumento IN (SELECT id FROM co_statidocumento WHERE descrizione = 'Emessa' OR descrizione = 'Parzialmente pagato')");
|
|
||||||
|
|
||||||
$diff = count($id_records) - count($rs_fatture);
|
|
||||||
if ($diff != 0) {
|
|
||||||
flash()->warning(tr('_NUM_ fatture non sono state incluse poichè non corrispondenti con i requisiti', [
|
|
||||||
'_NUM_' => $diff,
|
|
||||||
]));
|
|
||||||
}
|
|
||||||
|
|
||||||
if (empty($rs_fatture)) {
|
|
||||||
return;
|
|
||||||
}
|
|
||||||
|
|
||||||
//calcolo della descrizione
|
|
||||||
$descrizione_movimento = 'Pag. fatture num. ';
|
|
||||||
|
|
||||||
for ($i = 0; $i < sizeof($rs_fatture); ++$i) {
|
|
||||||
if ($rs_fatture[$i]['numero_esterno'] != '') {
|
|
||||||
$descrizione_movimento .= $rs_fatture[$i]['numero_esterno'].' ';
|
|
||||||
} else {
|
|
||||||
$descrizione_movimento .= $rs_fatture[$i]['numero'].' ';
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$idmastrino = get_new_idmastrino();
|
|
||||||
|
|
||||||
$importo_conto_aziendale = 0;
|
|
||||||
|
|
||||||
for ($i = 0; $i < sizeof($rs_fatture); ++$i) {
|
|
||||||
//Inserimento righe cliente
|
|
||||||
|
|
||||||
if ($rs_fatture[$i]['dir'] == 'entrata') {
|
|
||||||
$dir = 'entrata';
|
|
||||||
} else {
|
|
||||||
$dir = 'uscita';
|
|
||||||
}
|
|
||||||
|
|
||||||
$field = 'idconto_'.($dir == 'entrata' ? 'vendite' : 'acquisti');
|
|
||||||
$idconto_aziendale = $dbo->fetchArray('SELECT '.$field.' FROM co_pagamenti WHERE id = (SELECT idpagamento FROM co_documenti WHERE id='.prepare($rs_fatture[$i]['id']).') GROUP BY descrizione')[0][$field];
|
|
||||||
|
|
||||||
// Lettura conto di default
|
|
||||||
$idconto_aziendale = !empty($idconto_aziendale) ? $idconto_aziendale : setting('Conto aziendale predefinito');
|
|
||||||
|
|
||||||
$query = 'SELECT SUM(ABS(da_pagare-pagato)) AS rata FROM co_scadenziario WHERE iddocumento='.prepare($rs_fatture[$i]['id']).' GROUP BY iddocumento';
|
|
||||||
$rs = $dbo->fetchArray($query);
|
|
||||||
$totale_pagato = $rs[0]['rata'];
|
|
||||||
|
|
||||||
$importo_conto_aziendale += $totale_pagato;
|
|
||||||
}
|
|
||||||
|
|
||||||
//Inserimento riga unica per conto aziendale
|
|
||||||
if ($dir == 'entrata') {
|
|
||||||
$dbo->query('INSERT INTO co_movimenti(idmastrino, data, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', NOW(), '.prepare($descrizione_movimento).', '.prepare($idconto_aziendale).', '.prepare($importo_conto_aziendale).', 1)');
|
|
||||||
} else {
|
|
||||||
$dbo->query('INSERT INTO co_movimenti(idmastrino, data, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', NOW(), '.prepare($descrizione_movimento).', '.prepare($idconto_aziendale).', '.prepare(-$importo_conto_aziendale).', 1)');
|
|
||||||
}
|
|
||||||
|
|
||||||
for ($i = 0; $i < sizeof($rs_fatture); ++$i) {
|
|
||||||
//Inserimento righe cliente
|
|
||||||
|
|
||||||
if ($rs_fatture[$i]['dir'] == 'entrata') {
|
|
||||||
$dir = 'entrata';
|
|
||||||
} else {
|
|
||||||
$dir = 'uscita';
|
|
||||||
}
|
|
||||||
|
|
||||||
$query = 'SELECT SUM(ABS(da_pagare-pagato)) AS rata FROM co_scadenziario WHERE iddocumento='.prepare($rs_fatture[$i]['id']).' GROUP BY iddocumento';
|
|
||||||
$rs = $dbo->fetchArray($query);
|
|
||||||
$totale_pagato = $rs[0]['rata'];
|
|
||||||
|
|
||||||
// conto crediti clienti
|
|
||||||
if ($dir == 'entrata') {
|
|
||||||
// Se è la prima nota di una fattura leggo il conto del cliente
|
|
||||||
if ($rs_fatture[$i]['id'] != '') {
|
|
||||||
$query = 'SELECT idconto_cliente FROM an_anagrafiche INNER JOIN co_documenti ON an_anagrafiche.idanagrafica=co_documenti.idanagrafica WHERE co_documenti.id='.prepare($rs_fatture[$i]['id']);
|
|
||||||
$rs = $dbo->fetchArray($query);
|
|
||||||
$idconto_controparte = $rs[0]['idconto_cliente'];
|
|
||||||
} else {
|
|
||||||
$query = "SELECT id FROM co_pianodeiconti3 WHERE descrizione='Riepilogativo clienti'";
|
|
||||||
$rs = $dbo->fetchArray($query);
|
|
||||||
$idconto_controparte = $rs[0]['id'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
// conto debiti fornitori
|
|
||||||
else {
|
|
||||||
// Se è la prima nota di una fattura leggo il conto del fornitore
|
|
||||||
if ($rs_fatture[$i]['id'] != '') {
|
|
||||||
$query = 'SELECT idconto_fornitore FROM an_anagrafiche INNER JOIN co_documenti ON an_anagrafiche.idanagrafica=co_documenti.idanagrafica WHERE co_documenti.id='.prepare($rs_fatture[$i]['id']);
|
|
||||||
$rs = $dbo->fetchArray($query);
|
|
||||||
$idconto_controparte = $rs[0]['idconto_fornitore'];
|
|
||||||
} else {
|
|
||||||
$query = "SELECT id FROM co_pianodeiconti3 WHERE descrizione='Riepilogativo fornitori'";
|
|
||||||
$rs = $dbo->fetchArray($query);
|
|
||||||
$idconto_controparte = $rs[0]['id'];
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
// Lettura causale movimento (documento e ragione sociale)
|
|
||||||
$importo_conto_controparte = $totale_pagato;
|
|
||||||
|
|
||||||
if ($dir == 'entrata') {
|
|
||||||
$dbo->query('INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', NOW(), '.prepare($rs_fatture[$i]['data_doc']).', '.prepare($rs_fatture[$i]['id']).', '.prepare($rs_fatture[$i]['idanagrafica']).', '.prepare($descrizione_movimento).', '.prepare($idconto_controparte).', '.prepare(-$importo_conto_controparte).', 1)');
|
|
||||||
} else {
|
|
||||||
$dbo->query('INSERT INTO co_movimenti(idmastrino, data, data_documento, iddocumento, idanagrafica, descrizione, idconto, totale, primanota) VALUES('.prepare($idmastrino).', NOW(), '.prepare($rs_fatture[$i]['data_doc']).', '.prepare($rs_fatture[$i]['id']).', '.prepare($rs_fatture[$i]['idanagrafica']).', '.prepare($descrizione_movimento).', '.prepare($idconto_controparte).', '.prepare($importo_conto_controparte).', 1)');
|
|
||||||
}
|
|
||||||
|
|
||||||
aggiorna_scadenziario($rs_fatture[$i]['id'], abs($totale_pagato), date('d/m/Y'));
|
|
||||||
|
|
||||||
// Verifico se la fattura è stata pagata tutta, così imposto lo stato a "Pagato"
|
|
||||||
$query = 'SELECT SUM(pagato) AS tot_pagato, SUM(da_pagare) AS tot_da_pagare FROM co_scadenziario GROUP BY iddocumento HAVING iddocumento='.prepare($rs_fatture[$i]['id']);
|
|
||||||
$rs = $dbo->fetchArray($query);
|
|
||||||
|
|
||||||
// Aggiorno lo stato della fattura
|
|
||||||
if (abs($rs[0]['tot_pagato']) == abs($rs[0]['tot_da_pagare'])) {
|
|
||||||
$dbo->query("UPDATE co_documenti SET idstatodocumento=(SELECT id FROM co_statidocumento WHERE descrizione='Pagato') WHERE id=".prepare($rs_fatture[$i]['id']));
|
|
||||||
} elseif (abs($rs[0]['tot_pagato']) != abs($rs[0]['tot_da_pagare']) && abs($rs[0]['tot_pagato']) != '0') {
|
|
||||||
$dbo->query("UPDATE co_documenti SET idstatodocumento=(SELECT id FROM co_statidocumento WHERE descrizione='Parzialmente pagato') WHERE id=".prepare($rs_fatture[$i]['id']));
|
|
||||||
} else {
|
|
||||||
$dbo->query("UPDATE co_documenti SET idstatodocumento=(SELECT id FROM co_statidocumento WHERE descrizione='Emessa') WHERE id=".prepare($rs_fatture[$i]['id']));
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
$database->commitTransaction();
|
|
||||||
redirect($rootdir.'/editor.php?id_module='.Modules::get('Prima nota')['id'].'&id_record='.$idmastrino);
|
|
||||||
exit;
|
|
||||||
|
|
||||||
break;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
if (App::debug()) {
|
if (App::debug()) {
|
||||||
|
@ -304,18 +174,7 @@ if (App::debug()) {
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
||||||
$operations['registra-contabile'] = [
|
$operations['registrazione-contabile'] = [
|
||||||
'text' => '<span><i class="fa fa-calculator"></i> '.tr('Registra contabile pagamento').'</span>',
|
|
||||||
'data' => [
|
|
||||||
'title' => '',
|
|
||||||
'msg' => tr('Vuoi aggiungere un movimento contabile per le fatture selezionate?<br><small>(le fatture dovranno essere nello stato <i class="fa fa-clock-o text-info" title="Emessa"></i> <small>Emessa</small> altrimenti non saranno processate)</small>'),
|
|
||||||
'button' => tr('Procedi'),
|
|
||||||
'class' => 'btn btn-lg btn-warning',
|
|
||||||
'blank' => true,
|
|
||||||
],
|
|
||||||
];
|
|
||||||
|
|
||||||
$operations['registra-contabile-2'] = [
|
|
||||||
'text' => '<span><i class="fa fa-calculator"></i> '.tr('Registrazione contabile').'</span>',
|
'text' => '<span><i class="fa fa-calculator"></i> '.tr('Registrazione contabile').'</span>',
|
||||||
'data' => [
|
'data' => [
|
||||||
'title' => tr('Registrazione contabile'),
|
'title' => tr('Registrazione contabile'),
|
||||||
|
|
|
@ -37,7 +37,6 @@ switch (post('op')) {
|
||||||
'primanota' => 1,
|
'primanota' => 1,
|
||||||
]);
|
]);
|
||||||
|
|
||||||
if (!empty($id_documento)) {
|
|
||||||
// Inserisco nello scadenziario il totale pagato
|
// Inserisco nello scadenziario il totale pagato
|
||||||
if (empty($insoluto)) {
|
if (empty($insoluto)) {
|
||||||
aggiorna_scadenziario($id_documento, abs($totale), $data, $id_scadenza);
|
aggiorna_scadenziario($id_documento, abs($totale), $data, $id_scadenza);
|
||||||
|
@ -47,6 +46,7 @@ switch (post('op')) {
|
||||||
aggiorna_scadenziario($id_documento, -abs($totale), $data, $id_scadenza);
|
aggiorna_scadenziario($id_documento, -abs($totale), $data, $id_scadenza);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!empty($id_documento)) {
|
||||||
// Verifico se la fattura è stata pagata tutta, così imposto lo stato a "Pagato"
|
// Verifico se la fattura è stata pagata tutta, così imposto lo stato a "Pagato"
|
||||||
$rs = $dbo->fetchArray('SELECT SUM(pagato) AS tot_pagato, SUM(da_pagare) AS tot_da_pagare FROM co_scadenziario WHERE iddocumento='.prepare($id_documento));
|
$rs = $dbo->fetchArray('SELECT SUM(pagato) AS tot_pagato, SUM(da_pagare) AS tot_da_pagare FROM co_scadenziario WHERE iddocumento='.prepare($id_documento));
|
||||||
|
|
||||||
|
|
|
@ -9,8 +9,6 @@ $module = Modules::get('Prima nota');
|
||||||
$variables = Modules::get('Fatture di vendita')->getPlaceholders($id_documento);
|
$variables = Modules::get('Fatture di vendita')->getPlaceholders($id_documento);
|
||||||
$righe = [];
|
$righe = [];
|
||||||
|
|
||||||
$singola_scadenza = get('single') != null;
|
|
||||||
|
|
||||||
// Registrazione da remoto
|
// Registrazione da remoto
|
||||||
$id_records = get('id_records');
|
$id_records = get('id_records');
|
||||||
if (!empty($id_records)) {
|
if (!empty($id_records)) {
|
||||||
|
@ -22,19 +20,65 @@ if (!empty($id_records)) {
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|
||||||
// Fatture
|
// ID predefiniti
|
||||||
|
$dir = get('dir');
|
||||||
|
$singola_scadenza = get('single') != null;
|
||||||
|
|
||||||
$id_documenti = $id_documenti ?: get('id_documenti');
|
$id_documenti = $id_documenti ?: get('id_documenti');
|
||||||
$id_documenti = $id_documenti ? explode(',', $id_documenti) : [];
|
$id_documenti = $id_documenti ? explode(',', $id_documenti) : [];
|
||||||
|
|
||||||
|
$id_scadenze = $id_scadenze ?: get('id_scadenze');
|
||||||
|
$id_scadenze = $id_scadenze ? explode(',', $id_scadenze) : [];
|
||||||
|
|
||||||
|
// Scadenze
|
||||||
|
foreach ($id_scadenze as $id_scadenza) {
|
||||||
|
$scadenza = $dbo->fetchOne('SELECT descrizione, scadenza, iddocumento, SUM(da_pagare - pagato) AS rata FROM co_scadenziario WHERE id='.prepare($id_scadenza));
|
||||||
|
if (!empty($scadenza['iddocumento'])){
|
||||||
|
$id_documenti[] = $scadenza['iddocumento'];
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
|
$descrizione_conto = ($dir == 'entrata') ? 'Riepilogativo clienti' : 'Riepilogativo fornitori';
|
||||||
|
$conto = $dbo->fetchOne('SELECT id FROM co_pianodeiconti3 WHERE descrizione = '.prepare($descrizione_conto));
|
||||||
|
$id_conto_controparte = $conto['id'];
|
||||||
|
|
||||||
|
$righe_documento = [];
|
||||||
|
$righe_documento[] = [
|
||||||
|
'id_scadenza' => $scadenza['id'],
|
||||||
|
'conto' => null,
|
||||||
|
'dare' => ($dir == 'entrata') ? 0 : $scadenza['rata'],
|
||||||
|
'avere' => ($dir == 'entrata') ? $scadenza['rata'] : 0,
|
||||||
|
];
|
||||||
|
|
||||||
|
$righe_documento[] = [
|
||||||
|
'id_scadenza' => $scadenza['id'],
|
||||||
|
'conto' => $id_conto_controparte,
|
||||||
|
'dare' => ($dir == 'entrata') ? $scadenza['rata'] : 0,
|
||||||
|
'avere' => ($dir == 'entrata') ? 0 : $scadenza['rata'],
|
||||||
|
];
|
||||||
|
|
||||||
|
$righe = array_merge($righe, $righe_documento);
|
||||||
|
}
|
||||||
|
|
||||||
|
// Fatture
|
||||||
$numeri = [];
|
$numeri = [];
|
||||||
|
$counter = 0;
|
||||||
|
|
||||||
foreach ($id_documenti as $id_documento) {
|
foreach ($id_documenti as $id_documento) {
|
||||||
$fattura = Fattura::find($id_documento);
|
$fattura = Fattura::find($id_documento);
|
||||||
$tipo = $fattura->tipo;
|
$tipo = $fattura->stato;
|
||||||
$dir = $fattura->direzione;
|
$dir = $fattura->direzione;
|
||||||
|
|
||||||
|
// Inclusione delle sole fatture in stato Emessa, Parzialmente pagato o Pagato
|
||||||
|
if (!in_array($fattura->stato->descrizione, ['Emessa', 'Parzialmente pagato', 'Pagato'])) {
|
||||||
|
++$counter;
|
||||||
|
continue;
|
||||||
|
}
|
||||||
|
|
||||||
$numeri[] = !empty($fattura['numero_esterno']) ? $fattura['numero_esterno'] : $fattura['numero'];
|
$numeri[] = !empty($fattura['numero_esterno']) ? $fattura['numero_esterno'] : $fattura['numero'];
|
||||||
|
|
||||||
$nota_credito = $tipo->descrizione == 'Nota di credito';
|
$nota_credito = $tipo->descrizione == 'Nota di credito';
|
||||||
$is_insoluto = (!empty($fattura['riba']) && in_array($tipo->descrizione, ['Emessa', 'Parzialmente pagato', 'Pagato']) && $dir == 'entrata');
|
$is_insoluto = (!empty($fattura['riba']) && $dir == 'entrata');
|
||||||
|
|
||||||
// Predisposizione prima riga
|
// Predisposizione prima riga
|
||||||
$conto_field = 'idconto_'.($dir == 'entrata' ? 'vendite' : 'acquisti');
|
$conto_field = 'idconto_'.($dir == 'entrata' ? 'vendite' : 'acquisti');
|
||||||
|
@ -43,7 +87,6 @@ foreach ($id_documenti as $id_documento) {
|
||||||
// Predisposizione conto crediti clienti
|
// Predisposizione conto crediti clienti
|
||||||
$conto_field = 'idconto_'.($dir == 'entrata' ? 'cliente' : 'fornitore');
|
$conto_field = 'idconto_'.($dir == 'entrata' ? 'cliente' : 'fornitore');
|
||||||
$id_conto_controparte = $fattura->anagrafica[$conto_field];
|
$id_conto_controparte = $fattura->anagrafica[$conto_field];
|
||||||
//$_SESSION['superselect']['idconto_controparte'] = $id_conto_controparte;
|
|
||||||
|
|
||||||
// Lettura delle scadenza della fattura
|
// Lettura delle scadenza della fattura
|
||||||
$scadenze = $dbo->fetchArray('SELECT id, ABS(da_pagare - pagato) AS rata FROM co_scadenziario WHERE iddocumento='.prepare($id_documento).' AND ABS(da_pagare) > ABS(pagato) ORDER BY YEAR(scadenza) ASC, MONTH(scadenza) ASC');
|
$scadenze = $dbo->fetchArray('SELECT id, ABS(da_pagare - pagato) AS rata FROM co_scadenziario WHERE iddocumento='.prepare($id_documento).' AND ABS(da_pagare) > ABS(pagato) ORDER BY YEAR(scadenza) ASC, MONTH(scadenza) ASC');
|
||||||
|
@ -57,10 +100,9 @@ foreach ($id_documenti as $id_documento) {
|
||||||
|
|
||||||
// Riga aziendale
|
// Riga aziendale
|
||||||
$totale = sum(array_column($scadenze, 'rata'));
|
$totale = sum(array_column($scadenze, 'rata'));
|
||||||
$ids = implode(',', array_column($scadenze, 'id'));
|
|
||||||
if ($totale != 0) {
|
if ($totale != 0) {
|
||||||
$righe_documento[] = [
|
$righe_documento[] = [
|
||||||
'id_scadenza' => $ids,
|
'id_scadenza' => $scadenze[0]['id'],
|
||||||
'insoluto' => $is_insoluto,
|
'insoluto' => $is_insoluto,
|
||||||
'conto' => $id_conto_aziendale,
|
'conto' => $id_conto_aziendale,
|
||||||
'dare' => ($dir == 'entrata') ? 0 : $totale,
|
'dare' => ($dir == 'entrata') ? 0 : $totale,
|
||||||
|
@ -91,30 +133,6 @@ foreach ($id_documenti as $id_documento) {
|
||||||
$righe = array_merge($righe, $righe_documento);
|
$righe = array_merge($righe, $righe_documento);
|
||||||
}
|
}
|
||||||
|
|
||||||
$dir = get('dir');
|
|
||||||
|
|
||||||
// Scadenze
|
|
||||||
$id_scadenze = $id_scadenze ?: get('id_scadenze');
|
|
||||||
$id_scadenze = $id_scadenze ? explode(',', $id_scadenze) : [];
|
|
||||||
foreach ($id_scadenze as $id_scadenza) {
|
|
||||||
$scadenza = $dbo->fetchOne('SELECT descrizione, scadenza, SUM(da_pagare - pagato) AS rata FROM co_scadenziario WHERE id='.prepare($id_scadenza));
|
|
||||||
|
|
||||||
$descrizione_conto = ($dir == 'entrata') ? 'Riepilogativo clienti' : 'Riepilogativo fornitori';
|
|
||||||
$conto = $dbo->fetchOne('SELECT id FROM co_pianodeiconti3 WHERE descrizione = '.prepare($descrizione_conto));
|
|
||||||
$id_conto_controparte = $conto['id'];
|
|
||||||
|
|
||||||
$righe_documento = [];
|
|
||||||
|
|
||||||
$righe_documento[] = [
|
|
||||||
'id_scadenza' => $scadenza['id'],
|
|
||||||
'conto' => $id_conto_controparte,
|
|
||||||
'dare' => ($dir == 'entrata') ? $scadenza['rata'] : 0,
|
|
||||||
'avere' => ($dir == 'entrata') ? 0 : $scadenza['rata'],
|
|
||||||
];
|
|
||||||
|
|
||||||
$righe = array_merge($righe, $righe_documento);
|
|
||||||
}
|
|
||||||
|
|
||||||
// Descrizione
|
// Descrizione
|
||||||
$numero_scadenze = count($id_scadenze);
|
$numero_scadenze = count($id_scadenze);
|
||||||
$numero_documenti = count($id_documenti);
|
$numero_documenti = count($id_documenti);
|
||||||
|
@ -145,6 +163,24 @@ if ($numero_documenti + $numero_scadenze > 1) {
|
||||||
]);
|
]);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (!empty($id_records) && get('origine') == 'fatture' && !empty($counter)) {
|
||||||
|
$descrizione_stati = [];
|
||||||
|
$stati = $database->fetchArray("SELECT * FROM `co_statidocumento` WHERE descrizione IN ('Emessa', 'Parzialmente pagato', 'Pagato') ORDER BY descrizione");
|
||||||
|
foreach ($stati as $stato) {
|
||||||
|
$descrizione_stati[] = '<i class="'.$stato['icona'].'"></i> <small>'.$stato['descrizione'].'</small>';
|
||||||
|
}
|
||||||
|
|
||||||
|
echo '
|
||||||
|
<div class="alert alert-info">
|
||||||
|
<p>'.tr('Solo le fatture in stato _STATE_ possono essere registrate contabilmente ignorate', [
|
||||||
|
'_STATE_' => implode(', ', $descrizione_stati),
|
||||||
|
]).'.</p>
|
||||||
|
<p><b>'.tr('Sono state ignorate _NUM_ fatture', [
|
||||||
|
'_NUM_' => $counter,
|
||||||
|
]).'.</b></p>
|
||||||
|
</div>';
|
||||||
|
}
|
||||||
|
|
||||||
echo '
|
echo '
|
||||||
<form action="'.ROOTDIR.'/controller.php?id_module='.$module->id.'" method="post" id="add-form">
|
<form action="'.ROOTDIR.'/controller.php?id_module='.$module->id.'" method="post" id="add-form">
|
||||||
<input type="hidden" name="op" value="add">
|
<input type="hidden" name="op" value="add">
|
||||||
|
|
|
@ -0,0 +1,15 @@
|
||||||
|
<?php
|
||||||
|
|
||||||
|
include_once __DIR__.'/../../core.php';
|
||||||
|
|
||||||
|
$operations['registrazione-contabile'] = [
|
||||||
|
'text' => '<span><i class="fa fa-calculator"></i> '.tr('Registrazione contabile').'</span>',
|
||||||
|
'data' => [
|
||||||
|
'title' => tr('Registrazione contabile'),
|
||||||
|
'type' => 'modal',
|
||||||
|
'origine' => 'scadenzario',
|
||||||
|
'url' => $rootdir.'/add.php?id_module='.Modules::get('Prima nota')['id'],
|
||||||
|
],
|
||||||
|
];
|
||||||
|
|
||||||
|
return $operations;
|
Loading…
Reference in New Issue