/** * Método principal del comando * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) * @version 2015-12-18 */ public function main() { $json = \sasco\LibreDTE\Sii\Certificacion\SetPruebas::getJSON(file_get_contents($this->args['set'])); if (!empty($this->args['json'])) { file_put_contents($this->args['json'], $json); } else { echo $json; } return 0; }
* 3 de la Licencia, o (a su elección) cualquier versión posterior de la * misma. * * Este programa se distribuye con la esperanza de que sea útil, pero * SIN GARANTÍA ALGUNA; ni siquiera la garantía implícita * MERCANTIL o de APTITUD PARA UN PROPÓSITO DETERMINADO. * Consulte los detalles de la Licencia Pública General GNU para obtener * una información más detallada. * * Debería haber recibido una copia de la Licencia Pública General GNU * junto a este programa. * En caso contrario, consulte <http://www.gnu.org/licenses/gpl.html>. */ /** * @file 023-set_basico_json.php * * Ejemplo que muestra como obtejer el objeto JSON con los casos del set básico * de pruebas * * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) * @version 2015-09-19 */ // respuesta en texto plano header('Content-type: text/plain'); // incluir archivos php de la biblioteca y configuraciones include 'inc.php'; // folios a usar para el set de pruebas $folios = [33 => 10, 56 => 20, 61 => 30]; // obtener JSON del set de pruebas echo \sasco\LibreDTE\Sii\Certificacion\SetPruebas::getJSON(file_get_contents('set_pruebas/001-basico.txt'), $folios);
/** * Acción que genera el JSON a partir del archivo de pruebas y lo pasa a la * utilidad que genera el XML EnvioDTE a partir de dicho JSON * @author Esteban De La Fuente Rubio, DeLaF (esteban[at]sasco.cl) * @version 2015-10-05 */ public function set_pruebas_dte() { // si no se pasó el archivo error if (!isset($_FILES['archivo']) or $_FILES['archivo']['error']) { \sowerphp\core\Model_Datasource_Session::message('Debes enviar el archivo del set de pruebas entregado por el SII', 'error'); $this->redirect('/certificacion/set_pruebas#dte'); } // armar folios $folios = []; if (isset($_POST['folios'])) { $n_folios = count($_POST['folios']); for ($i = 0; $i < $n_folios; $i++) { if (!empty($_POST['folios'][$i]) and !empty($_POST['desde'][$i])) { $folios[$_POST['folios'][$i]] = $_POST['desde'][$i]; } } } // obtener JSON del archivo $json = \sasco\LibreDTE\Sii\Certificacion\SetPruebas::getJSON(file_get_contents($_FILES['archivo']['tmp_name']), $folios); if (!$json) { \sowerphp\core\Model_Datasource_Session::message('No fue posible crear el archivo JSON a partir del archivo del set de prueba, ¡verificar el formato y/o codificación!', 'error'); $this->redirect('/certificacion/set_pruebas#dte'); } // guardar json para el siguiente paso y redirigir \sowerphp\core\Model_Datasource_Session::write('documentos_json', $json); $this->redirect('/utilidades/generar_xml'); }