You are on page 1of 29

Contenido

1.

Definicin y Planeacin del Proyecto..................................................................3

2.

Introduccin.................................................................................................... 3

3.

Objetivo general.............................................................................................. 3

4.

Objetivos especficos........................................................................................ 3

5.

Antecedentes.................................................................................................. 4

6.

Marco terico.................................................................................................. 5
6.1.

Google Docs............................................................................................. 5

6.2.

Google Spreadsheets................................................................................. 5

6.3.

Google drive............................................................................................. 5

6.4.

Hojas de clculo........................................................................................ 5

6.5.

Google Apps Script.................................................................................... 6

6.6.

Editor de secuencia de comandos................................................................6

6.7.

JavaScript................................................................................................ 6

6.8.

Base de datos........................................................................................... 7

6.9.

Servidores................................................................................................ 7
Nube.................................................................................................... 7

6.10.
7.

Justificacin.................................................................................................... 8

8.

Anlisis del problema....................................................................................... 8

9.

Desarrollo del proyecto................................................................................... 10


9.1.

Cuenta de correo electrnico.....................................................................10

9.2.

Conectar el servidor y base de datos..........................................................10

9.3.

Realizar consulta en SQL Server...............................................................11

9.4.

Consulta ingresada al editor de secuencia de comandos...............................12

9.5.

Posicionando columnas para obtener informacin........................................12

9.6.

Registros almacenados............................................................................ 13

9.7.

Formato condicional................................................................................. 14

10.

Resultados................................................................................................ 16

11.

Terminar Sistema de dispersiones SAT..........................................................17

11.1.

Mdulo de logueo.............................................................................. 17

11.2.

Modelo para editar parmetros Solo administrador..................................18

11.3.

Modulo para realizar la dispersin...........................................................19

11.3.1.

Tabla de proveedor.........................................................................20

11.3.2.

Boton Generar archivo....................................................................22

11.3.3.
12.

Link Actualizar Tabla.......................................................................23

Modificaciones a reportes Intraplax Joomla....................................................27

Bibliografa.......................................................................................................... 28

1. Definicin y Planeacin del Proyecto


La empresa CAJAPLAX S.A. de C.V. actualmente crea sus reportes para que los
empleados involucrados puedan entender mejor el procedimiento mediante su
INTRAPLAX, el objetivo es migrar todo a la nube mediante la tecnologa de google, para
poder acceder ms rpidamente y desde cualquier lugar, tambin teniendo en cuenta
poder modificar y trabajar ms de una persona en tiempo real en la misma hoja.

2. Introduccin
En esta memoria se hablara sobra la creacin de aplicaciones en google con conexin a
ERP que son reportes creados en las hojas de clculo de google con una conexin de
base de datos con SQL Server mediante lenguaje JavaScript, el motivo de esto es migrar
todos los procesos que se realizan en la empresa CAJAPLAX S.A de C.V. a la nube, as
poder tener acceso en cualquier momento y en cualquier lugar siempre con conexin a
internet y sobre todo una manera de poder trabajar distintos usuarios en un mismo reporte
a la vez.

3. Objetivo general
Desarrollar reportes mediante la hoja de clculo de Google Spreadsheet con conexin a
ERP usando el lenguaje JavaScript, con la finalidad de contar con informacin actualizada
para la toma de decisiones.
Objetivos especficos
Conectar base de datos SQL Server que se encuentra en un servidor para poder
obtener los datos en tiempo real
Utilizacin de complementos para poder dar una mejor estructura a los reportes
configuracin con Google Spreadsheet

4. Antecedentes

En la empresa CAJAPLAX S.A. DE C.V. Ubicada en Apan Hidalgo, generaba sus reportes
con lenguaje PHP y al finalizar la publicaba en su INTRAPLAX para que los empleado que
tienen permisos pudieran consultarla y descargarla en hojas de clculo Excel, Hoy han
decidido migrar todo a la nube con la tecnologa de google.
Con dicha tecnologa se podrn realizar reportes donde todos los usuarios permitidos
podrn modificar y observar la informacin detallada segn pedida por diferentes reas,
tambin podrn trabajar desde sus dispositivos mviles y lo ms importante podr realizar
trabajos con ms de una personal en tiempo real siempre con conexin a internet.

5. Marco terico

5.1.

Google Docs

Google Docs, Hojas de clculo de Google y Presentaciones de Google son aplicaciones


de productividad que te permiten crear distintos tipos de documentos online, trabajar con
ellos en tiempo real con otras personas y guardarlos en tu Google Drive online (MATT,
Google, 2015).
Google Docs es una sencilla pero potente suite ofimtica, todo en lnea. Nos permite crear
nuevos documentos, editar los que ya tenamos o compartirlos en la red (S.L., aulaClic ,
2010).

5.2.

Google Spreadsheets

Google Docs and Spreadsheets es una aplicacin que 'vive' en internet y permite a sus
usuarios disponer de un sencillo editor de textos y hojas de clculo (Avedillo, 2007).

5.3.

Google drive

Servicio de almacenamiento de archivos en lnea, que fue introducido por Google el 24 de


abril de2012 (gazabon, 2014).
Google Drive te permite almacenar y acceder a tus archivos en cualquier lugar: en la Web,
en tu unidad de disco duro o all donde ests (MATT, Ayuda Google Drive, 2015).
Es un servicio en Internet para guardar y compartir archivos. Bsicamente este servicio de
Google utiliza la nube para permitirles a sus usuarios almacenar y compartir archivos o
carpetas completas (Castro, s.f.).

5.4.

Hojas de clculo

Hojas de clculo de Google es una aplicacin de hojas de clculo online que te permite
crear y dar formato a hojas de clculo, adems de colaborar simultneamente con otras
personas (MATT, Google, 2015).
Una hoja de clculo es una aplicacin que nos permite realizar clculos con nmeros
organizados en una cuadrcula (S.L., aulaClic, 2010).

5.5.

Google Apps Script

Google Apps Script (GAS) es un lenguaje de programacin JavaScript en la nube, se


ejecutan en los servidores de Google y tienen acceso a la mayora de los productos de
Google y de servicios de terceros. Esto facilita la automatizacin de distintas tareas (Arce,
2012).
With Apps Script, you can create add-ons for Google Sheets, Docs, or Forms, automate
your workflow, integrate with external APIs, and more (Script, 2015).
Google Apps Script es un lenguaje de scripting basado en la nube que ofrece maneras
fciles de automatizar las tareas a travs de productos de Google y servicios de
terceros. No es nueva, ya que hace del 2009 que se liber y esta herramienta ya
est muy madura (Pozo, 2012).

5.6.

Editor de secuencia de comandos

Mientras las macros de Excel se escriben en Visual Basic, basado en BASIC, las
secuencias de comando de Google se escriben en Google Apps Script, que est basado
en javascript, el lenguaje estndar de las pginas web, y el ms popular del mundo
(Silvestri, 2013).
Un sistema basado en javascript, al que se le han aadido varios objetos para poder
interactuar con nuestras hojas de datos. Este sistema tiene acceso a todas las funciones
internas de Google Spreadsheets y adems nos permite controlar perfectamente las
acciones que realizamos (Huerta, 2013).

5.7.

JavaScript

Es un lenguaje de programacin, al igual que PHP, si bien tiene diferencias importantes


con ste. JavaScript se utiliza principalmente del lado del cliente (es decir, se ejecuta en
nuestro ordenador, no en el servidor) permitiendo crear efectos atractivos y dinmicos en
las pginas web (Gonzlez, 2006).

Es un lenguaje que puede ser utilizado por profesionales y para quienes se inician en el
desarrollo y diseo de sitios web. No requiere de compilacin ya que el lenguaje funciona
del lado del cliente, los navegadores son los encargados de interpretar estos cdigos
(Valds, MAESTRO DEL WEB, 2007).

5.8.

Base de datos

Una base de datos es un almacn que nos permite guardar grandes cantidades de
informacin de forma organizada para que luego podamos encontrar y utilizar fcilmente
(Valds, MAESTRO DEL WEB, 2007).

5.9.

Servidores

Un servidor, como la misma palabra indica, es un ordenador o mquina informtica que


est al servicio de otras mquinas, ordenadores o personas llamadas clientes y que le
suministran a estos, todo tipo de informacin (Sierra, 2006).
Un servidor es un equipo que se encarga de dar algn tipo de servicio a otros PCs que se
denominan clientes. Se trata de mquinas por tanto que deben funcionar 24 horas al da y
los 365 das del ao (Iglesias, 2015).

5.10.

Nube

La informtica en nube se refiere a equipos y aplicaciones que se ejecutan de forma


remota y a los que se puede acceder por Internet. En la informtica en nube, los equipos y
servidores fsicos se reemplazan por mquinas virtuales que se ejecutan en grandes
centros de datos (Network, 2015).
Esta nueva tendencia tecnolgica es un concepto surgido de la necesidad de desplazar a
servidores en Internet, dedicados a este fin, todas las aplicaciones y documentos que el
usuario utiliza diariamente para su labor, con el objetivo de que el mismo pueda disponer
de dichos elementos en el momento que los necesite y desde cualquier lugar del planeta,
para poder cumplir con su trabajo ms all de la situacin en la que se encuentre
(INFORMATICAHOY, 2007).

6. Justificacin
La problemtica que se tiene en la empresa CAJAPLAX S.A de C.V que al observar los
reportes creados anteriormente por estudiantes, se encuentran en una Intraplax la cual
cada personal tiene acceso mediante una cuenta. Pretenden migrar todo los reportes a la
Nube para poder trabajarlos en tiempo real y realizar al mismo tiempo modificaciones
tambin compartirlo entre distintas personas mediante la tecnologa de Google Docs, lo
cual es una gran ventaja ya que se puede trabajar en equipo en tiempo real en cualquier
lugar, con conexin a internet. Es necesario tener una cuenta de correo para poder
utilizarlo.
Se pretende comenzar a crear los nuevos reportes requeridos por distintas reas para as
poder migrar poco a poco y seguir manteniendo la informacin actualizada ya con la
tecnologa de Google.
La labor que tengo es crear el primer reporte en hoja de clculo de Google utilizando el
editor de secuencia de comandos con sintaxis parecida a JavaScript para poder realizar la
consulta a un servidor que contiene la base de datos as mismo poder mostrar los
resultados en la tablas en tiempo real. Sin tener experiencia en la creacin de reportes en
hojas de clculo de Google, navegando por internet utilizando la informacin necesaria
para su creacin.

7. Anlisis del problema


En la actualidad la empresa CAJAPLAX S.A. de C.V. genera los reportes para informar a
las distintas plantas sobre su produccin mediante la INTRAPLAX la cual puede acceder
solo personal autorizado mediante un usuario y contrasea, la creacin de reportes es
realizada mediante programacin PHP, JAVASCRIPT y lenguaje de marcado HTML,
algunos reportes an se tienen creados en hojas de clculo de Microsoft. El problema que
se tiene es que quieren migrar de una manera lenta de tecnologa toda la informacin en
la nube para evitar prdidas de informacin y evitar los pagos de licenciamiento de
Windows. La creacin de reportes en la Hoja de Clculo de Google es una opcin muy
buena ya que se mantiene en la nube y puede acceder desde cualquier lugar en cualquier
dispositivo o ordenador, puede trabajarse en tiempo real, en equipo, compartir archivos

con distintas personas mediante conexin a internet y solo con una cuenta de correo
electrnico.
La creacin del primer reporte se llevara a cabo mediante investigaciones en internet,
obteniendo la informacin ms valiosa para poder realizar nuestro objetivo.

8. Desarrollo del proyecto


Para llevar acabo los desarrollo de los reportes en la hoja de clculo de Google se busc
en la internet el funcionamiento de las Hojas de clculo, as tambin el funcionamiento del
editor de secuencias de comandos, ya que es la principal razn de poder crear los
reportes en las hojas de clculo de Google por medio de una conexin a una base de
datos.

8.1.

Cuenta de correo electrnico

Para poder generar o utilizar la hoja de clculo de Google se debe tener una cuenta de
correo electrnico (Gmail), en el cual se podr almacenar dicho archivo, se podr abrir
cuando usted desee, compartir y trabajar en equipo en el mismo y en tiempo real, siempre
con conexin a internet

8.2.

Conectar el servidor y base de datos

La primera funcin en realizar el reporte en la hoja de clculo fue conectar la base de


datos que est alojada en un servidor, para poder mostrar los datos de la consulta que
generaba el reporte.

Figura 1. Conexin servidor

En la Figura 1 se muestra la conexin al servidor, donde Server se coloca la direccin de


servidor y posteriormente el puerto, seguido de punto y coma la base de datos que se va
a utilizar, usuario y contrasea de la misma base de datos, donde solo se mostraran los
2000 primeros registros ya que la base de datos es muy extensa y podra tardarse mucho
en cargarse todos los registros requeridos.

8.3.

Realizar consulta en SQL Server

Construccin de la consulta que proporcionara los datos pedidos, se realiza en SLQ


server conectndose al mismo servidor y a la misma base de datos, por lo cual unir
distintas celdas y diversos campos para llegar a la consulta que me arrojara los valores
que se piden.

Figura 2. Consulta

En esta consulta me muestra distintitos productos con sus especificaciones de almacenes


especficos, los cuales le permitirn observar que productos se encuentran en dichos
almacenes y de la misma manera si les falta producir o tienen exceso de inventario.
Se realizan restas entre celdas, conversiones de nmeros a letras, suma del producto
para que no se encuentre repetido si se encuentra en el mismo almacn, si est en
distinto almacn se mostrara de nuevo el registro. Se aplica distintos mtodos que se
mostraron durante mi formacin

8.4.

Consulta ingresada al editor de secuencia de comandos

Despus de haber realizado dicha consulta se tiene que ingresar la consulta al editor de
comandos para posteriormente este la ejecute y obtenga los datos requeridos.

Figura 3. Consulta en el editor de secuencia de comandos

Se utiliza una funcin del editor de secuencia de comandos executeQuery el cual


ejecutara la consulta creada automticamente al abrir la hoja de clculo de Google, donde
el primer registro se insertara en la celda A3 por qu as se especific en el cdigo.

8.5.

Posicionando columnas para obtener informacin

Para poder acomodar de una mejor forma los registros se tiene que posicionar las
columnas, ya que si una columna no est posicionada no se mostrara los registros de
dicha columna. En este caso estoy utilizando 16 columnas para la creacin del reporte.

Figura 4. Posicin de columnas

8.6.

Registros almacenados

Figura 5. Registros

En la Figura 4 se muestra algunos registros en la hoja de clculo de Google los cuales el


primer registro se empieza en la celda A3 y sigue ejecutndose la consulta a partir de
esa celda

8.7.

Formato condicional

Funciones que vienen integradas en la hoja de clculo de Google, en estas condiciones


se insertan cantidades menores a 0 en color rojo para mostrar los valores negativos que
tiene la celda y de esa forma se resalta.

Figura 6. Formato condicional en cantidades negativas

Tambin se ocup para hacer semforos de manera fcil y rpida, ya que se pintara de
color distinto dependiendo de una condicin. De esta manera se podrn dar cuenta
cuando tienen exceso de producto, falta producto o est el producto estable y no hace
falta producir ms producto.

Figura 7. Formato condicional en semforos

9. Resultados

Figura 8.resultado

En la Figura 8. Se muestra un pequeo resultado del reporte, de esa forma se va a poder


observar, an tiene muchos registros ms.
En este reporte se puede mostrar detalladamente producto por producto, observarse en
que almacn est guardado, si falta producir producto, las fechas en que se inicia y se
termina una produccin, la familia a la que pertenece dicho producto, entre otras cosas
ms.
Para poder visualizarse de una mejor manera hace falta personalizar la hoja de clculo
para poder un mejor aspecto sobre el reporte.

10. Terminar Sistema de dispersiones SAT


Actualmente dentro de la empresa, el proceso de pagos a proveedores es lento y tedioso
para los encargados que deben identificar las facturas a pagar y el monto que se pagar
al proveedor. Esto se hace para que posterior a estas actividades se realicen los pagos
dentro del portal bancario, teniendo que realizar este proceso de pago varias veces para
cada una de las operaciones que deben ser realizadas ese da.
El mdulo de dispersin de pagos, facilitara a los usuarios encargados de realizar los
pagos, la creacin del archivo de texto plano que el banco requiere para procesar todos
los datos desde un portal en internet. Al ser este un proceso ya automatizado, ahorrara
tiempo a la empresa que puede ser utilizado en otras actividades.
Entre algunos de los beneficios que tendr la implementacin de este sistema se
encuentran:

Aumentar la rapidez en proceso de realizar pagos.

Creacin automtica de archivo de texto con formato requerido por el banco.

Identificara los proveedores del lote que ya han sido agregados a un archivo de
texto anteriormente para evitar se pueda realizar un pago dos veces.

Anteriormente los alumnos que realizaban residencia profesional en la empresa, iniciaron


el proyecto lo cual no fue terminado a tiempo con su termino de residencia y se pide que
sea terminado lo antes posible para poner en funcin dicho software. Los mdulos con lo
que ya contaba el proyecto son los siguientes:

10.1. Mdulo de logueo.


El sistema cuenta con un mdulo de logueo, por lo cual para poder ingresar, es necesario
contar con un usuario y una contrasea que darn acceso al sistema. Una vez ingresados
los datos, el sistema har una conexin a la base de datos y verificara si el usuario y
contrasea son vlidos, de no ser as, ser negado el acceso

Figura 9. Logueo
Los campos estn validados, si el usuario no ingresa nada en alguno de ellos, al dar clic
en el botn Aceptar, se mostrara un mensaje indicando que deber de llenar todos los
campos. Esta accin se realiza dentro del botn aceptar.

10.2.

Modelo para editar parmetros Solo administrador

A este mdulo solo podr acceder el administrador y podr editar los campos que se
guardaran en la base de datos. Este mdulo estar restringido debido a que estos datos
son propios de la empresa y si algn otro usuario llegara a equivocarse, sera pagar una
suma de dinero muy alta.

Figura 10. Configuracin

10.3.

Modulo para realizar la dispersin

Una vez ingresados los datos correspondientes y verificados en la base de datos,


pasaremos a la ventana principal de nuestro sistema desde la cual podremos generar el
archivo de dispersin.

Figura 11. Dispersin


En la parte superior del formulario se encuentra un conjunto de campos con datos para la
dispersin en general, la mayora de ellos estn protegidos para que no se puedan editar
ya que son campos tomados de la base de datos y del sistema. Los campos que se
pueden editar solo son 5 (Lote, Tipo de Archivo, Concepto de pago, Cve Moneda de pago
y Tipo detalle) que tomaran el valor de acuerdo al tipo de dispersin.
Los pagos a los proveedores se realizaran por lotes.
En el Tipo de archivo se carga la informacin desde la base de datos.
Cuenta de cargo y Referencia Empresa son cuadros de texto que estn
protegidos y no pueden ser editados, estos se pueden editar en la parte de los
parmetros nicamente por el administrador.
se carga la fecha del Sistema para saber el da en que se hace la dispersin.
Concepto de pago aparecer la descripcin del lote, pude contener informacin o
no.
importe de pagos se muestra el importe total por lote.
Cve. Moneda de pago se muestran 2 opciones, cada una para cada tipo de
moneda, 00 es para moneda nacional (Pesos mexicanos) y 01 para dlares
americanos (USD).
Tipo detalle donde indicaremos si los movimientos de la dispersin son altas o
bajas.

10.3.1. Tabla de proveedor


Hasta este punto eran las funciones que se tenan en el software, ya que al en la tabla de
proveedores no se encontraba bien la consulta de la base de datos, lo cual no arrojaba los
datos que se pedan. Para atacar el problema se elabor la consulta en el software SQL
Server, al terminar y verificar que los datos requeridos eran correctos, se empez a
programar en el software Visual Studio en el mismo proyecto.
El mtodo para que en la tabla fuera mostrada los datos mas sobresaliente de cada uno
de los proveedores es el siguiente:

Public Sub ConsultaProveedor(ByVal prov As String)


Try

conn.Open()
Dim da As New SqlDataAdapter("select distinct NOMBREPROVEEDOR AS [NOMBRE
BENEFICIARIO], SUBSTRING(CLABE ,1,3) as [BANCO RECEPTOR], CLABE AS [CUENTA
ABONO], CONVERT(varchar(20), SUM(CANTDOCTO) over(partition by nombreproveedor)) as
[IMPORTE PAGO], IDPROVEEDOR AS [CLAVE BENEFICIARIO], CORREO AS [MAIL DETALLE]
FROM cxDispersion WHERE lote = '" & prov & "' ORDER BY [NOMBRE BENEFICIARIO]", conn)
Dim ds As New DataSet
da.Fill(ds)

Form1.DGProv.DataSource = ds.Tables(0)
Form1.DGProv.Columns(0).Width
Form1.DGProv.Columns(1).Width
Form1.DGProv.Columns(2).Width
Form1.DGProv.Columns(3).Width
Form1.DGProv.Columns(4).Width
Form1.DGProv.Columns(5).Width
Form1.DGProv.Columns(6).Width

=
=
=
=
=
=
=

120
120
300
80
130
130
130

Form1.DGProv.Columns(0).HeaderCell.Style.Alignment
DataGridViewContentAlignment.MiddleCenter
Form1.DGProv.Columns(1).HeaderCell.Style.Alignment
DataGridViewContentAlignment.MiddleCenter
Form1.DGProv.Columns(2).HeaderCell.Style.Alignment
DataGridViewContentAlignment.MiddleCenter
Form1.DGProv.Columns(3).HeaderCell.Style.Alignment
DataGridViewContentAlignment.MiddleCenter
Form1.DGProv.Columns(4).HeaderCell.Style.Alignment
DataGridViewContentAlignment.MiddleCenter
Form1.DGProv.Columns(5).HeaderCell.Style.Alignment
DataGridViewContentAlignment.MiddleCenter
Form1.DGProv.Columns(6).HeaderCell.Style.Alignment
DataGridViewContentAlignment.MiddleCenter
Form1.DGProv.Columns(0).HeaderCell.Style.Font
FontStyle.Bold, GraphicsUnit.Point)
Form1.DGProv.Columns(1).HeaderCell.Style.Font
FontStyle.Bold, GraphicsUnit.Point)
Form1.DGProv.Columns(2).HeaderCell.Style.Font
FontStyle.Bold, GraphicsUnit.Point)
Form1.DGProv.Columns(3).HeaderCell.Style.Font
FontStyle.Bold, GraphicsUnit.Point)
Form1.DGProv.Columns(4).HeaderCell.Style.Font
FontStyle.Bold, GraphicsUnit.Point)
Form1.DGProv.Columns(5).HeaderCell.Style.Font
FontStyle.Bold, GraphicsUnit.Point)
Form1.DGProv.Columns(6).HeaderCell.Style.Font
FontStyle.Bold, GraphicsUnit.Point)
Catch ex As Exception
Finally
conn.Close()
End Try
End Sub

10.3.2. Boton Generar archivo

=
=
=
=
=
=
=

= New Drawing.Font("Tahoma", 8,
= New Drawing.Font("Tahoma", 8,
= New Drawing.Font("Tahoma", 8,
= New Drawing.Font("Tahoma", 8,
= New Drawing.Font("Tahoma", 8,
= New Drawing.Font("Tahoma", 8,
= New Drawing.Font("Tahoma", 8,

Este componente, es el encargado de crear el archivo de texto plano y escribir sobre l,


los datos que sern mostrados.

Private Sub Button1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs)


Handles Button1.Click

Dim GuardarArchivo As New SaveFileDialog


GuardarArchivo.Filter = "Text files (*.txt) |*.txt |*.*|"
GuardarArchivo.Title = "Guardar como"
GuardarArchivo.FileName = "Dispersion"
GuardarArchivo.ShowDialog()
conectar.insContador(fechaMas)
SecuenciaArchivo = conectar.ConsContador(fechaMas)
If SecuenciaArchivo.Length < 2 Then
SecuenciaArchivo = "0" & SecuenciaArchivo
End If
'IMPORTE TOTAL
Dim ImporteTotal1 = txtImporte.Text
Dim ImporteTotal2 = txtImporte.Text
'MOVIMIENTOS
Dim movimientos1 As String = ""
Dim movimientos2 As String = ""
If cmbDetalle.SelectedItem = "Detalle Altas" Then
movimientos2 = "0000000"
movimientos1 = DGProv.RowCount()
If movimientos1.Length > 7 Then
movimientos1 = movimientos1.Substring(0, 7)
ElseIf movimientos1.Length < 7 Then
movimientos1 = movimientos1.PadLeft(7, "0"c)
End If
ImporteTotal2 = "00000000000000000"
ImporteTotal1 = Mid(ImporteTotal1, 1, Len(ImporteTotal1) - 3)
ImporteTotal1 = Replace(ImporteTotal1, ".", "")
If ImporteTotal1.Length < 17 Then
ImporteTotal1 = ImporteTotal1.PadLeft(17, "0"c)
End If
ElseIf cmbDetalle.SelectedItem = "Detalle Bajas" Then
movimientos1 = "0000000"
movimientos2 = DGProv.RowCount()
If movimientos2.Length > 7 Then
movimientos2 = movimientos2.Substring(0, 7)
ElseIf movimientos2.Length < 7 Then
movimientos2 = movimientos2.PadLeft(7, "0"c)
End If

ImporteTotal1 = "00000000000000000"
ImporteTotal2 = Mid(ImporteTotal2, 1, Len(ImporteTotal2) - 3)
ImporteTotal2 = Replace(ImporteTotal2, ".", "")
If ImporteTotal2.Length < 17 Then
ImporteTotal2 = ImporteTotal2.PadLeft(17, "0"c)
End If
End If
Dim fs As FileStream = File.Create(GuardarArchivo.FileName)
Dim Contenido As Byte() = New
UTF8Encoding(True).GetBytes(conectar.CodigoTipoA(cmbTA.SelectedItem) & "HA" &
conectar.NumCont() & SecuenciaArchivo & New String("0"c, 27) & New String(" "c, 332) &
vbNewLine & conectar.CodigoTipoA(cmbTA.SelectedItem) & "HB" &
cmbMoneda.SelectedItem & New String("0"c, 4) & conectar.Cuenta() & "00" &
fechaMas.ToString("ddMMyyyy") & New String("0"c, 3) & New String(" "c, 336) &
vbNewLine & conectar.RecorreGrid &
conectar.CodigoTipoA(cmbTA.SelectedItem) & "TB" & movimientos1 & ImporteTotal1 &
movimientos2 & ImporteTotal2 & New String("0"c, 219) & New String(" "c, 123) &
vbNewLine & conectar.CodigoTipoA(cmbTA.SelectedItem) & "TA" & movimientos1 &
ImporteTotal1 & movimientos2 & ImporteTotal2 & New String("0"c, 219) & New String(" "c,
123))
fs.Write(Contenido, 0, Contenido.Length)
fs.Close()
MessageBox.Show("Archivo de texto creado exitosamente")
End Sub

10.3.3. Link Actualizar Tabla


En este link se manda a ejecutar el procedimiento que se encuentra en la base de datos
llamado cxspDisperProvTrx2
USE [CXDMO]
GO
/****** Object: StoredProcedure [dbo].[cxspDisperProvTrx2]
Date: 02/24/2015 15:50:57 ******/
SET ANSI_NULLS ON
GO
SET QUOTED_IDENTIFIER ON
GO
--CREATE
ALTER PROCEDURE [dbo].[cxspDisperProvTrx2]
(
@BACHNUMB CHAR(15)
-- Nmero de Lote
)
AS
-- Variables para datos del pago
DECLARE
@VCHRNMBR CHAR(21),
@VENDORID CHAR(15),

-- Nmero de voucher
-- Id de Proveedor

Script

@DOCDATE DATETIME,
@DOCNUMBR CHAR(21),
@DOCAMNT NUMERIC(19, 5),
@TRXSORCE CHAR(13),
@TRXDSCRN CHAR(31),
@POSTEDDT DATETIME,
@PTDUSRID CHAR(15),
@MODIFDT DATETIME,
@MDFUSRID CHAR(15),
@CURNCYID CHAR(15)
-- Variables
DECLARE
@VENDNAME
@VADDCDPR
@ACNMVNDR
@TXRGNNUM
@COMMENT1
@COMMENT2

-----------

Fecha del voucher


Numero de documento
Importe de la transaccion
Codigo de auditoria
Descripcion de la transaccion
Fecha de posteo
Usuario quien posteo
Fecha de modificacion
Usuario quien modifico
Tipo de moneda

de informacion del proveedor


CHAR(65),
CHAR(15),
CHAR(18),
CHAR(25),
CHAR(31),
CHAR(31)

-------

Nombre del Proveedor


Id domicilio fiscal del Proveedor
Clabe Interbancaria
RFC
Banco
Sucursal

-- Informacion de Internet
DECLARE
@Master_Type CHAR(3),
@Master_ID CHAR(31),
@ADRSCODE CHAR(15),
@INET1 CHAR(201),
@INET2 CHAR(201),
@INET3 CHAR(201),
@INET4 CHAR(201),
@INET5 CHAR(201),
@INET6 CHAR(201),
@INET7 CHAR(201),
@INET8 CHAR(201),
@DEX_ROW_TS DATETIME
-- Informacion de Lote
DECLARE
@NUMOFTRX INT,
@BCHCOMNT CHAR(61)
-- Informacin de ejecucin
-- Agregado 16/12/2014 por LMP
DECLARE
@FLAG BIT,
@VECES INT
SELECT @NUMOFTRX = NUMOFTRX, @BCHCOMNT = BCHCOMNT
FROM PM80100
WHERE BACHNUMB = @BACHNUMB
--Declara el cursor externo para consultar datos de pago
DECLARE curVoucher CURSOR FOR
SELECT VENDORID, VCHRNMBR, DOCDATE, DOCNUMBR, DOCAMNT, TRXSORCE,
TRXDSCRN, POSTEDDT, PTDUSRID, MODIFDT, MDFUSRID
FROM PM30200
WHERE BACHNUMB = @BACHNUMB AND DOCTYPE = 6

OPEN curVoucher
FETCH NEXT FROM curVoucher INTO @VENDORID, @VCHRNMBR, @DOCDATE,
@DOCNUMBR, @DOCAMNT, @TRXSORCE, @TRXDSCRN, @POSTEDDT, @PTDUSRID,
@MODIFDT, @MDFUSRID
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE curVendor CURSOR FOR
SELECT VENDNAME, VADDCDPR, ACNMVNDR, TXRGNNUM, COMMENT1,
COMMENT2
FROM PM00200
WHERE VENDORID = @VENDORID
OPEN curVendor
FETCH NEXT FROM curVendor INTO @VENDNAME, @VADDCDPR, @ACNMVNDR,
@TXRGNNUM, @COMMENT1, @COMMENT2
-- Cursor Interno Busqueda de datos de proveedor
WHILE @@FETCH_STATUS = 0
BEGIN
DECLARE curInet CURSOR FOR
SELECT INET1
FROM SY01200
WHERE Master_Type = 'VEN' AND Master_ID = @VENDORID
AND ADRSCODE = @VADDCDPR
OPEN curInet
FETCH curInet INTO @INET1
WHILE (@@FETCH_STATUS = 0)
BEGIN
FETCH NEXT FROM curInet INTO

@INET1

END
CLOSE curInet
DEALLOCATE curInet
FETCH NEXT FROM curVendor INTO @VENDNAME, @VADDCDPR, @ACNMVNDR,
@TXRGNNUM, @COMMENT1, @COMMENT2
END
CLOSE curVendor
DEALLOCATE curVendor
SET @DEX_ROW_TS = GETDATE()
SET
SET
SET
SET
SET

@INET2
@INET3
@INET4
@INET5
@INET6

=
=
=
=
=

''
''
''
''
''

SET @INET7 = ''


SET @INET8 = ''
-- Coloca los valores de las banderas
SET @FLAG = 0
SET @VECES = 0
DECLARE @CORREO CHAR(201)
SET @CORREO = 'sin correo'
-- Valida que exista datos de cuenta de correo
--BEGIN TRY
--INSERT INTO TABLA (Campo1,ID) VALUES (@Valor,@ID)
--END TRY
--BEGIN CATCH
--UPDATE TABLA SET Campo1 = @Valor WHERE ID = @ID
--END CATCH
IF NOT EXISTS( SELECT NUMDOCTO FROM cxDispersion WHERE NUMDOCTO =
@DOCNUMBR)
BEGIN
INSERT INTO cxDispersion
VALUES(@BACHNUMB, @VENDORID, @VENDNAME,
@VCHRNMBR,@DOCDATE, @DOCNUMBR, @DOCAMNT, @TRXSORCE, @TRXDSCRN, @POSTEDDT,
@PTDUSRID, @MODIFDT, @MDFUSRID, @VADDCDPR, @ACNMVNDR, @TXRGNNUM,
@COMMENT1, @COMMENT2, @INET1, @INET2, @INET3, @INET4, @INET5, @INET6,
@INET7, @INET8, @NUMOFTRX, @BCHCOMNT, @FLAG, @VECES, @DEX_ROW_TS)
END
ELSE
BEGIN
@BACHNUMB

UPDATE cxDispersion SET CORREO = 'sin correo' WHERE LOTE =

END
-- Inserta registros en la tabla de dispersiones

FETCH NEXT FROM curVoucher INTO @VENDORID, @VCHRNMBR, @DOCDATE,


@DOCNUMBR, @DOCAMNT, @TRXSORCE, @TRXDSCRN, @POSTEDDT, @PTDUSRID,
@MODIFDT, @MDFUSRID
-- at this point, @@FETCH_STATUS = 0 if new data was fetched
END
CLOSE curVoucher
DEALLOCATE curVoucher

El mtodo que ejecutaba la etiqueta:

Public Sub LlenaTablaDispersion(ByVal lote As String)


Dim myReader5 As SqlDataReader
comando = conn.CreateCommand
comando.CommandText = "exec cxspDisperProvTrx2 '" & lote & "'"
Try
conn.Open()
myReader5 = comando.ExecuteReader()
Catch ex As Exception
MsgBox(ex.Message)
Finally
myReader5.Close()
conn.Close()
End Try
End Sub

Private Sub LinkLabel3_LinkClicked(ByVal sender As System.Object, ByVal e As


System.Windows.Forms.LinkLabelLinkClickedEventArgs) Handles LinkLabel3.LinkClicked
conectar.LlenaTablaDispersion(conectar.ConsultaLoteEditar())
conectar.ConsultaProveedor(cmbLote.SelectedItem)
cmbLote.Items.Clear()
conectar.ConsultaLote()
End Sub

11. Modificaciones a reportes Intraplax Joomla


La intraplax es un servidor virtual donde se encuentra alojado los reportes, conectando as
Joomla y ERP para posteriormente publicar los reportes importantes de sus respectivas
reas y sus procesos que se llevan, as tambin para proporcionar noticias sobre la
empresa y sus logros, manteniendo informados a sus trabajadores.
11.1.
11.2.
11.3.
11.4.
11.5.
11.6.
11.7.
11.8.
11.9.
11.10.
11.11.

Modificacin a reporte Estatus de OP


Modificacin a reporte Seguimiento de OP
Modificacin a reporte Seguimiento diario de produccin
Modificacin a reporte Histrico de produccin
Modificacin a reporte OP pendiente por cerrar
Modificacin a reporte Reportes de utilizacin
Modificacin a reporte Rutas de produccin
Modificacin a reporte Histrico de produccin
Modificacin a Reporte de utilizacin
Modificacin a reporte Lista de expedicin
Modificacin a reporte PT almacn

11.12. Modificacin a reporte Embarques

Bibliografa
Arce, N. (3 de Diciembre de 2012). blogspot.mx. Obtenido de blogspot.mx:
http://narce90.blogspot.mx/2012/12/empezando-con-google-appsscript.html
Avedillo, J. M. (26 de Febrero de 2007). OBSERVATORIO TECNOLOGICO.
Obtenido de OBSERVATORIO TECNOLOGICO:
http://recursostic.educacion.es/observatorio/web/en/internet/recursosonline/438-javier-martinez-avedillo
Castro, L. (s.f.). About.com. Obtenido de About.com:
http://aprenderinternet.about.com/od/ConceptosBasico/a/compartirarchivos-google-drive.htm
gazabon, k. e. (05 de Mayo de 2014). Academia.edu. Obtenido de
Academia.edu:
http://www.academia.edu/7770035/GOOGLE_DRIVE_DEFINICION_Y_CARA
CTERISTICAS
Gonzlez, E. (2006). aprenderaprogramar.com. Obtenido de
aprenderaprogramar.com: http://aprenderaprogramar.com/index.php?
option=com_content&view=article&id=590:ique-es-y-para-que-sirvejavascript-embeber-javascript-en-html-ejercicio-ejemplo-basicocu00731b&catid=69:tutorial-basico-programador-web-html-desdecero&Itemid=192
Huerta, I. (07 de Febrero de 2013). blog ikhuerta. Obtenido de ikhuerta:
http://blog.ikhuerta.com/sincronizar-datos-entre-archivos-en-googlespreadsheets-de-google-drive

Iglesias, A. L. (2015). about.com. Obtenido de about.com:


http://computadoras.about.com/od/tipos-de-pc/fl/iquestQueacute-es-unservidor.htm
INFORMATICAHOY. (2007). INFORMATICAHOY. Obtenido de INFORMATICAHOY:
http://www.informatica-hoy.com.ar/la-nube/Introduccion-a-la-Nube-CloudComputing.php
MATT. (2015). Ayuda Google Drive. Obtenido de Ayuda Google Drive:
https://support.google.com/drive/answer/2424384?hl=es
MATT. (2015). Google. Obtenido de Ayuda de editores de Documentos:
https://support.google.com/docs/answer/49008?hl=es
Network, M. D. (2015). Microsoft Developer Network. Obtenido de Microsoft
Developer Network: https://msdn.microsoft.com/es-es/ff380142.aspx
Pozo, G. (21 de Abril de 2012). Obtenido de
http://www.aprendiendodeandroidymas.com/2012/04/introducciongoogle-apps-script.html
S.L., a. (Junio de 2010). aulaClic. Obtenido de aulaClic:
http://www.aulaclic.es/googledocs/t_6_1.htm
S.L., a. (Junio de 2010). aulaClic . Obtenido de aulaClic :
http://www.aulaclic.es/googledocs/t_1_1.htm
Script, A. (23 de Abril de 2015). Google Developers. Obtenido de Google
Developers: https://developers.google.com/apps-script/
Sierra, M. (2006). aprenderaprogramar.com. Obtenido de
aprenderaprogramar.com: http://aprenderaprogramar.com/index.php?
option=com_content&view=article&id=542:que-es-un-servidor-y-cualesson-los-principales-tipos-de-servidores-proxydns-webftppop3-y-smtpdhcp&catid=57:herramientas-informaticas&Itemid=179
Silvestri, A. (10 de Junio de 2013). Hojas de calculo de google . Obtenido de
Hojas de calculo de google :
http://hojasdecalculogoogle.blogspot.mx/2013/06/macros-en-hojas-decalculo-google.html
Valds, D. P. (3 de Julio de 2007). MAESTRO DEL WEB. Obtenido de MAESTRO
DEL WEB : http://www.maestrosdelweb.com/que-es-javascript/
Valds, D. P. (26 de Octubre de 2007). MAESTRO DEL WEB. Obtenido de
MAESTRO DEL WEB: http://www.maestrosdelweb.com/que-son-las-basesde-datos/

You might also like