Skip to content

Instantly share code, notes, and snippets.

View donpandix's full-sized avatar
🎯
Codificando como un campeón

Cesar Gonzalez M. donpandix

🎯
Codificando como un campeón
View GitHub Profile
@donpandix
donpandix / ejemplo_conexion_sap.java
Last active July 30, 2019 21:55
Ejemplo de una conexión y consulta simple a SAP
import java.io.File;
import java.io.FileOutputStream;
import java.util.ArrayList;
import java.util.Hashtable;
import java.util.List;
import java.util.Properties;
import com.sap.conn.jco.AbapException;
import com.sap.conn.jco.JCoDestination;
import com.sap.conn.jco.JCoDestinationManager;
import com.sap.conn.jco.JCoException;
@donpandix
donpandix / archivo.bat
Last active August 29, 2019 16:40
Crear archivos con un tamaño determinado por comando de DOS
'fsutil file createnew <NOMBRE_ARCHIVO> <TAMAÑO EN BYTES>
'Para el cálculo de bytes https://es.calcuworld.com/informatica/calculadora-de-bytes/
fsutil file createnew archivo_3_megas.pdf 3145728
@donpandix
donpandix / limpiaParametros.php
Last active October 29, 2019 00:15
Limpia parametros con PHP, evita inyección de código nocivo por URL
function limpiaParametros( $param ) {
$cross_site_scripting = array ( '@<script[^>]*?>.*?</script>@si', // Remover javascript
'@<[\/\!]*?[^<>]*?>@si' ); // Remover etiquetas HTML
$inyeccion_sql = array ( '/\bAND\b/i', '/\bOR\b/i', '/\bSELECT\b/i',
'/\bFROM\b/i', '/\bWHERE\b/i', '/\bUPDATE\b/i',
'/\bDELETE\b/i', '/\b\*\b/i', '/\bCREATE\b/i' );
$retorno = preg_replace ( $inyeccion_sql, "", $param );
$retorno = preg_replace ( $cross_site_scripting, "", $retorno );
$retorno = htmlentities( $retorno, ENT_QUOTES ); // Acá es importante verificar la codificación (ISO o UTF-8)
return trim( $retorno );
@donpandix
donpandix / Helper.java
Last active February 14, 2020 04:32
Implementación de una lista enlazada simple con java
import java.util.concurrent.ThreadLocalRandom;
class Helper {
static int[] lista_generica_valores ( int largo_cadena ) {
int [] arreglo_base = new int[largo_cadena];
for ( int n =0; n<largo_cadena;n++ ) {
arreglo_base[n] = ThreadLocalRandom.current().nextInt(0, 100000 + 1);
}
return arreglo_base;
@donpandix
donpandix / ordenamiento.java
Last active April 13, 2020 16:06
Implementación del ordenamiento de datos a través del algoritmo BubleSort
class BubleSort {
BubleSort (int ... array) {
long time_start, time_end;
time_start = System.currentTimeMillis();
for(int i = 0; i < array.length; i++) {
for(int j = i + 1; j < array.length; j++) {
if(array[j] < array[i]) {
@donpandix
donpandix / get_sp_tables.sql
Last active June 3, 2020 16:19
Consultas a base de datos SQL Server 2012 para obtener la lista de las tablas y procedimientos almacenados dentro de un esquema de la base de datos, como dato adicional, se deben ejecutar las consultas dentro del esquema en el cual se necesita obtene
-- Lista de tablas
SELECT * FROM INFORMATION_SCHEMA.TABLES
-- Lista de SP's
SELECT * FROM INFORMATION_SCHEMA.routines where routine_type = 'PROCEDURE'
-- Lista de tablas con las columnas y sus descripciones
SELECT sys.objects.name AS TableName,
sys.columns.name AS ColumnName,
ep.value AS Description
@donpandix
donpandix / fecha_cadena_resta.sql
Last active May 12, 2021 22:03
Formatea y resta fechas para desplegar con SQL
-- Obtención de un objeto DATETIME desde una cadena de texto
SELECT CAST('20200101' AS DATETIME) AS fecha
-- resultado
-- 01/01/2020 0:00:00
-- Resta de un mes a la fecha obtenida desde una cadena de texto
@donpandix
donpandix / TBL_temporal.sql
Last active May 12, 2021 22:03
Creación de tablas temporales con indice
CREATE TABLE #tabla_temporal (
id_tabla BIGINT
,cd_columna_01 BIGINT
,gl_columna_02
)
CREATE NONCLUSTERED INDEX idx_tabla_temporal ON #tabla_temporal ([id_tabla])
-- Otras formas de definir indices
@donpandix
donpandix / accion.js
Last active May 12, 2021 22:14
[DataTables.js ejemplo de uso y carga de datos] Genera una tabla con carga de datos ASYNC con datatables.js #javascript
$(document).ready(function(){
/**
* Setea e inicializa la tabla con datos
*/
$("#tbl_ajax").DataTable({
"ajax" : URL_SERVICIO,
"columns" : [
{"data" : "col1" },
{"data" : "col2"},
@donpandix
donpandix / list_fk.sql
Last active May 18, 2021 14:00
[Limpiar de forma eficaz tablas en base de datos] Instrucciones para borrar el contenido de todas las tablas sin las restricciones de las claves foraneas #sql #query #delete #constraint #clean
-- Lista de claves foraneas, solo información
SELECT name AS 'Constraint',
OBJECT_NAME(parent_object_id) AS 'Table',
OBJECT_NAME(referenced_object_id) AS 'Referenced Table',
is_disabled,
is_not_trusted
FROM sys.foreign_keys;