parroquia 1.1.38 → 1.1.40

Sign up to get free protection for your applications and to get access to all the features.
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'fox16'
4
+ require 'date'
4
5
  include Fox
5
6
 
6
7
  class ActualizarPermisoBautismo < FXMainWindow
@@ -163,24 +164,38 @@ class ActualizarPermisoBautismo < FXMainWindow
163
164
  # tabla sacramentos (id, nombre, fecha, celebrante, certifica, padrino, madrina, testigo_novio, testigo_novia, padre, madre, nombres_novia, apellidos_novia, cedula_novia, fk_creyentes, fk_parroquias, fk_registros_civiles, fk_libros)
164
165
  # tabla registros_civiles (id, provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc)
165
166
  # Iniciar una transacción
166
- $conn.transaction do
167
- $conn.exec(
168
- 'UPDATE sacramentos SET fecha = $1, sacramento = $2, certifica = $3, padrino = $4, madrina = $5, padre = $6, madre = $7, cedula_padrino = $8, cedula_madrina = $9, cedula_padre = $10, cedula_madre = $11 WHERE id = $12',
169
- fecha, sacramento, certifica, padrino, madrina, padre, madre, cedula_padrino, cedula_madrina, cedula_padre, cedula_madre, registro[0])
170
- $conn.exec('UPDATE creyentes SET nombres = $1, apellidos = $2, cedula = $3 WHERE id = $6',
171
- [name, apellidos, cedula, registro[22]])
172
- $conn.exec('UPDATE parroquias SET parroquia = $1, sector = $2, parroco = $3 WHERE id = $4',
173
- [parroquia, sector, parroco, registro[28]])
174
167
 
175
- # ¿Desea guardar los cambios? SI: commit msg: datos actualizados correctamente, NO: rollback, close
176
- if FXMessageBox.question(self, MBOX_YES_NO, 'Pregunta', '¿Desea guardar los cambios?') == MBOX_CLICKED_YES
177
- # Confirmar la transacción
178
- $conn.exec('COMMIT')
179
- FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos actualizados correctamente')
180
- else
181
- $conn.exec('ROLLBACK')
168
+ def validar_formato_fecha(fecha)
169
+ begin
170
+ Date.strptime(fecha, '%Y/%m/%d') || Date.strptime(fecha, '%Y-%m-%d')
171
+ return true
172
+ rescue ArgumentError
173
+ return false
182
174
  end
183
- close
175
+ end
176
+
177
+ if validar_formato_fecha(fecha)
178
+ $conn.transaction do
179
+ $conn.exec(
180
+ 'UPDATE sacramentos SET fecha = $1, sacramento = $2, certifica = $3, padrino = $4, madrina = $5, padre = $6, madre = $7, cedula_padrino = $8, cedula_madrina = $9, cedula_padre = $10, cedula_madre = $11 WHERE id = $12',
181
+ fecha, sacramento, certifica, padrino, madrina, padre, madre, cedula_padrino, cedula_madrina, cedula_padre, cedula_madre, registro[0])
182
+ $conn.exec('UPDATE creyentes SET nombres = $1, apellidos = $2, cedula = $3 WHERE id = $6',
183
+ [name, apellidos, cedula, registro[22]])
184
+ $conn.exec('UPDATE parroquias SET parroquia = $1, sector = $2, parroco = $3 WHERE id = $4',
185
+ [parroquia, sector, parroco, registro[28]])
186
+
187
+ # ¿Desea guardar los cambios? SI: commit msg: datos actualizados correctamente, NO: rollback, close
188
+ if FXMessageBox.question(self, MBOX_YES_NO, 'Pregunta', '¿Desea guardar los cambios?') == MBOX_CLICKED_YES
189
+ # Confirmar la transacción
190
+ $conn.exec('COMMIT')
191
+ FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos actualizados correctamente')
192
+ else
193
+ $conn.exec('ROLLBACK')
194
+ end
195
+ close
196
+ end
197
+ else
198
+ FXMessageBox.warning(self, MBOX_OK, 'Advertencia', 'Formato de fecha incorrecto. Ingrese una fecha válida en formato YYYY/MM/DD.')
184
199
  end
185
200
  end
186
201
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'fox16'
4
+ require 'date'
4
5
  include Fox
5
6
 
6
7
  class ActualizarPreMatrimonial < FXMainWindow
@@ -141,25 +142,39 @@ class ActualizarPreMatrimonial < FXMainWindow
141
142
  # tabla parroquias (id, nombre, sector, parroco)
142
143
  # tabla sacramentos (id, nombre, fecha, celebrante, certifica, padrino, madrina, testigo_novio, testigo_novia, padre, madre, nombres_novia, apellidos_novia, cedula_novia, fk_creyentes, fk_parroquias, fk_registros_civiles, fk_libros)
143
144
  # tabla registros_civiles (id, provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc)
144
- $conn.transaction do
145
- $conn.exec(
146
- 'UPDATE sacramentos SET sacramento = $1, fecha = $2, certifica = $3, testigo_novio = $4, testigo_novia = $5, nombres_novia = $6, apellidos_novia = $7, cedula_novia = $8 WHERE id = $9', [
147
- sacramento, fecha, certifica, testigo_novio, testigo_novia, nombres_novia, apellidos_novia, cedula_novia, registro[0]
148
- ]
149
- )
150
- $conn.exec('UPDATE creyentes SET nombres = $1, apellidos = $2, cedula = $3 WHERE id = $4',
151
- [name_novio, apellido_novio, cedula_novio, registro[22]])
152
- $conn.exec('UPDATE parroquias SET parroquia = $1, sector = $2, parroco = $3 WHERE id = $4',
153
- [parroquia, sector, parroco, registro[28]])
154
145
 
155
- # ¿Desea guardar los cambios? SI: commit msg: datos actualizados correctamente, NO: rollback, close
156
- if FXMessageBox.question(self, MBOX_YES_NO, 'Pregunta', '¿Desea guardar los cambios?') == MBOX_CLICKED_YES
157
- $conn.exec('COMMIT')
158
- FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos actualizados correctamente')
159
- else
160
- $conn.exec('ROLLBACK')
146
+ def validar_formato_fecha(fecha)
147
+ begin
148
+ Date.strptime(fecha, '%Y/%m/%d') || Date.strptime(fecha, '%Y-%m-%d')
149
+ return true
150
+ rescue ArgumentError
151
+ return false
161
152
  end
162
- close
153
+ end
154
+
155
+ if validar_formato_fecha(fecha)
156
+ $conn.transaction do
157
+ $conn.exec(
158
+ 'UPDATE sacramentos SET sacramento = $1, fecha = $2, certifica = $3, testigo_novio = $4, testigo_novia = $5, nombres_novia = $6, apellidos_novia = $7, cedula_novia = $8 WHERE id = $9', [
159
+ sacramento, fecha, certifica, testigo_novio, testigo_novia, nombres_novia, apellidos_novia, cedula_novia, registro[0]
160
+ ]
161
+ )
162
+ $conn.exec('UPDATE creyentes SET nombres = $1, apellidos = $2, cedula = $3 WHERE id = $4',
163
+ [name_novio, apellido_novio, cedula_novio, registro[22]])
164
+ $conn.exec('UPDATE parroquias SET parroquia = $1, sector = $2, parroco = $3 WHERE id = $4',
165
+ [parroquia, sector, parroco, registro[28]])
166
+
167
+ # ¿Desea guardar los cambios? SI: commit msg: datos actualizados correctamente, NO: rollback, close
168
+ if FXMessageBox.question(self, MBOX_YES_NO, 'Pregunta', '¿Desea guardar los cambios?') == MBOX_CLICKED_YES
169
+ $conn.exec('COMMIT')
170
+ FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos actualizados correctamente')
171
+ else
172
+ $conn.exec('ROLLBACK')
173
+ end
174
+ close
175
+ end
176
+ else
177
+ FXMessageBox.warning(self, MBOX_OK, 'Advertencia', 'Formato de fecha incorrecto. Ingrese una fecha válida en formato YYYY/MM/DD.')
163
178
  end
164
179
  end
165
180
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'fox16'
4
+ require 'date'
4
5
  include Fox
5
6
 
6
7
  class ActualizarSupletoria < FXMainWindow
@@ -252,36 +253,50 @@ class ActualizarSupletoria < FXMainWindow
252
253
  # tabla sacramentos (id, nombre, fecha, celebrante, certifica, padrino, madrina, testigo_novio, testigo_novia, padre, madre, nombres_novia, apellidos_novia, cedula_novia, fk_creyentes, fk_parroquias, fk_registros_civiles, fk_libros)
253
254
  # tabla registros_civiles (id, provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc)
254
255
  # Iniciar una transacción
255
- $conn.transaction do
256
- $conn.exec('UPDATE libros SET tomo = $1, pagina = $2, numero = $3 WHERE id = $4',
257
- [tomo, page, number, registro[18]])
258
- $conn.exec(
259
- 'UPDATE sacramentos SET fecha = $1, sacramento = $2, celebrante = $3, testigo_novio = $4, testigo_novia = $5, certifica = $6, padrino = $7, madrina = $8, padre = $9, madre = $10 WHERE id = $11', [
260
- fecha, sacramento, ministro, testigo_uno, testigo_dos, certifica, padrino, madrina, padre, madre, registro[0]
261
- ]
262
- )
263
- $conn.exec(
264
- 'UPDATE creyentes SET nombres = $1, apellidos = $2, lugar_nacimiento = $3, fecha_nacimiento = $4, cedula = $5 WHERE id = $6', [
265
- name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula, registro[18]
266
- ]
267
- )
268
- $conn.exec('UPDATE parroquias SET parroquia = $1, sector = $2, parroco = $3 WHERE id = $4',
269
- [parroquia, sector, parroco, registro[28]])
270
- $conn.exec(
271
- 'UPDATE registros_civiles SET provincia_rc = $1, canton_rc = $2, parroquia_rc = $3, anio_rc = $4, tomo_rc = $5, pagina_rc = $6, acta_rc = $7, fecha_rc = $8 WHERE id = $9', [
272
- provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pag_rc, acta_rc, date_rc, registro[32]
273
- ]
274
- )
275
256
 
276
- # ¿Desea guardar los cambios? SI: commit msg: datos actualizados correctamente, NO: rollback, close
277
- if FXMessageBox.question(self, MBOX_YES_NO, 'Pregunta', '¿Desea guardar los cambios?') == MBOX_CLICKED_YES
278
- # Confirmar la transacción
279
- $conn.exec('COMMIT')
280
- FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos actualizados correctamente')
281
- else
282
- $conn.exec('ROLLBACK')
257
+ def validar_formato_fecha(fecha)
258
+ begin
259
+ Date.strptime(fecha, '%Y/%m/%d') || Date.strptime(fecha, '%Y-%m-%d')
260
+ return true
261
+ rescue ArgumentError
262
+ return false
283
263
  end
284
- close
264
+ end
265
+
266
+ if validar_formato_fecha(fecha) && validar_formato_fecha(fecha_nacimiento) && validar_formato_fecha(date_rc)
267
+ $conn.transaction do
268
+ $conn.exec('UPDATE libros SET tomo = $1, pagina = $2, numero = $3 WHERE id = $4',
269
+ [tomo, page, number, registro[18]])
270
+ $conn.exec(
271
+ 'UPDATE sacramentos SET fecha = $1, sacramento = $2, celebrante = $3, testigo_novio = $4, testigo_novia = $5, certifica = $6, padrino = $7, madrina = $8, padre = $9, madre = $10 WHERE id = $11', [
272
+ fecha, sacramento, ministro, testigo_uno, testigo_dos, certifica, padrino, madrina, padre, madre, registro[0]
273
+ ]
274
+ )
275
+ $conn.exec(
276
+ 'UPDATE creyentes SET nombres = $1, apellidos = $2, lugar_nacimiento = $3, fecha_nacimiento = $4, cedula = $5 WHERE id = $6', [
277
+ name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula, registro[18]
278
+ ]
279
+ )
280
+ $conn.exec('UPDATE parroquias SET parroquia = $1, sector = $2, parroco = $3 WHERE id = $4',
281
+ [parroquia, sector, parroco, registro[28]])
282
+ $conn.exec(
283
+ 'UPDATE registros_civiles SET provincia_rc = $1, canton_rc = $2, parroquia_rc = $3, anio_rc = $4, tomo_rc = $5, pagina_rc = $6, acta_rc = $7, fecha_rc = $8 WHERE id = $9', [
284
+ provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pag_rc, acta_rc, date_rc, registro[32]
285
+ ]
286
+ )
287
+
288
+ # ¿Desea guardar los cambios? SI: commit msg: datos actualizados correctamente, NO: rollback, close
289
+ if FXMessageBox.question(self, MBOX_YES_NO, 'Pregunta', '¿Desea guardar los cambios?') == MBOX_CLICKED_YES
290
+ # Confirmar la transacción
291
+ $conn.exec('COMMIT')
292
+ FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos actualizados correctamente')
293
+ else
294
+ $conn.exec('ROLLBACK')
295
+ end
296
+ close
297
+ end
298
+ else
299
+ FXMessageBox.warning(self, MBOX_OK, 'Advertencia', 'Formato de fecha incorrecto. Ingrese una fecha válida en formato YYYY/MM/DD.')
285
300
  end
286
301
  end
287
302
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'fox16'
4
+ require 'date'
4
5
  include Fox
5
6
 
6
7
  class Bautizo < FXMainWindow
@@ -214,31 +215,45 @@ class Bautizo < FXMainWindow
214
215
  # tabla sacramentos (id, nombre, fecha, celebrante, certifica, padrino, madrina, testigo_novio, testigo_novia, padre, madre, nombres_novia, apellidos_novia, cedula_novia, fk_creyentes, fk_parroquias, fk_registros_civiles, fk_libros)
215
216
  # tabla registros_civiles (id, provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc)
216
217
  # Iniciar una transacción
217
- $conn.transaction do
218
- $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)', [tomo, page, number])
219
- $conn.exec(
220
- 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
221
- name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula
222
- ]
223
- )
224
- $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
225
- [parroquia, sector, parroco])
226
- $conn.exec(
227
- 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
228
- provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pag_rc, acta_rc, date_rc
229
- ]
230
- )
231
- # Insertar en la tabla misas
232
- @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
233
- $conn.exec(
234
- 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica, padrino, madrina, padre, madre) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
235
- sacramento, fecha, ministro, certifica, padrino, madrina, padre, madre
236
- ]
237
- )
238
- # Confirmar la transacción
239
- $conn.exec('COMMIT')
240
- FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
241
- clear_input_fields
218
+
219
+ def validar_formato_fecha(fecha)
220
+ begin
221
+ Date.strptime(fecha, '%Y/%m/%d') || Date.strptime(fecha, '%Y-%m-%d')
222
+ return true
223
+ rescue ArgumentError
224
+ return false
225
+ end
226
+ end
227
+
228
+ if validar_formato_fecha(fecha) && validar_formato_fecha(fecha_nacimiento) && validar_formato_fecha(date_rc)
229
+ $conn.transaction do
230
+ $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)', [tomo, page, number])
231
+ $conn.exec(
232
+ 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
233
+ name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula
234
+ ]
235
+ )
236
+ $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
237
+ [parroquia, sector, parroco])
238
+ $conn.exec(
239
+ 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
240
+ provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pag_rc, acta_rc, date_rc
241
+ ]
242
+ )
243
+ # Insertar en la tabla misas
244
+ @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
245
+ $conn.exec(
246
+ 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica, padrino, madrina, padre, madre) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
247
+ sacramento, fecha, ministro, certifica, padrino, madrina, padre, madre
248
+ ]
249
+ )
250
+ # Confirmar la transacción
251
+ $conn.exec('COMMIT')
252
+ FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
253
+ clear_input_fields
254
+ end
255
+ else
256
+ FXMessageBox.warning(self, MBOX_OK, 'Advertencia', 'Formato de fecha incorrecto. Ingrese una fecha válida en formato YYYY/MM/DD.')
242
257
  end
243
258
  end
244
259
 
@@ -1,6 +1,7 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  require 'fox16'
4
+ require 'date'
4
5
  include Fox
5
6
 
6
7
  class PreBautismal < FXMainWindow
@@ -135,31 +136,45 @@ class PreBautismal < FXMainWindow
135
136
  # tabla sacramentos (id, nombre, fecha, celebrante, certifica, padrino, madrina, testigo_novio, testigo_novia, padre, madre, nombres_novia, apellidos_novia, cedula_novia, fk_creyentes, fk_parroquias, fk_registros_civiles, fk_libros)
136
137
  # tabla registros_civiles (id, provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc)
137
138
  # Iniciar una transacción
138
- $conn.transaction do
139
- $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)', [nil, nil, nil])
140
- $conn.exec(
141
- 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
142
- name, apellidos, nil, nil, cedula
143
- ]
144
- )
145
- $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
146
- [parroquia, sector, parroco])
147
- $conn.exec(
148
- 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
149
- nil, nil, nil, nil, nil, nil, nil, nil
150
- ]
151
- )
152
- # Insertar en la tabla misas
153
- @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
154
- $conn.exec(
155
- 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica, padrino, madrina, padre, madre, cedula_padrino, cedula_madrina) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)', [
156
- sacramento, fecha, nil, certifica, padrino, madrina, padre, madre, cedula_padrino, cedula_madrina
157
- ]
158
- )
159
- # Confirmar la transacción
160
- $conn.exec('COMMIT')
161
- FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
162
- clear_input_fields
139
+
140
+ def validar_formato_fecha(fecha)
141
+ begin
142
+ Date.strptime(fecha, '%Y/%m/%d') || Date.strptime(fecha, '%Y-%m-%d')
143
+ return true
144
+ rescue ArgumentError
145
+ return false
146
+ end
147
+ end
148
+
149
+ if validar_formato_fecha(fecha)
150
+ $conn.transaction do
151
+ $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)', [nil, nil, nil])
152
+ $conn.exec(
153
+ 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
154
+ name, apellidos, nil, nil, cedula
155
+ ]
156
+ )
157
+ $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
158
+ [parroquia, sector, parroco])
159
+ $conn.exec(
160
+ 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
161
+ nil, nil, nil, nil, nil, nil, nil, nil
162
+ ]
163
+ )
164
+ # Insertar en la tabla misas
165
+ @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
166
+ $conn.exec(
167
+ 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica, padrino, madrina, padre, madre, cedula_padrino, cedula_madrina) VALUES ($1, $2, $3, $4, $5, $6, $7, $8, $9, $10)', [
168
+ sacramento, fecha, nil, certifica, padrino, madrina, padre, madre, cedula_padrino, cedula_madrina
169
+ ]
170
+ )
171
+ # Confirmar la transacción
172
+ $conn.exec('COMMIT')
173
+ FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
174
+ clear_input_fields
175
+ end
176
+ else
177
+ FXMessageBox.warning(self, MBOX_OK, 'Advertencia', 'Formato de fecha incorrecto. Ingrese una fecha válida en formato YYYY/MM/DD.')
163
178
  end
164
179
  end
165
180
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  require 'pg'
4
4
  require 'fox16'
5
+ require 'date'
5
6
  include Fox
6
7
 
7
8
  class Comunion < FXMainWindow
@@ -137,42 +138,56 @@ class Comunion < FXMainWindow
137
138
  # tabla sacramentos (id, nombre, fecha, celebrante, certifica, padrino, madrina, testigo_novio, testigo_novia, padre, madre, nombres_novia, apellidos_novia, cedula_novia, fk_creyentes, fk_parroquias, fk_registros_civiles, fk_libros)
138
139
  # tabla registros_civiles (id, provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc)
139
140
  # Iniciar una transacción
140
- $conn.transaction do
141
- # Insertar en la tabla libros
142
- @registro_libros = $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)',
143
- [tomo, page, number])
144
-
145
- # Insertar en la tabla creyentes
146
- @registro_creyentes = $conn.exec(
147
- 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
148
- name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula
149
- ]
150
- )
151
-
152
- # Insertar en la tabla parroquias
153
- @registro_parroquias = $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
154
- [parroquia, sector, parroco])
155
-
156
- # Insertar en la tabla registros civiles, si no existen datos se crea un registro nuevo con id que corresponda y se llena los demaás datos con nil
157
- @registro_registros_civiles = $conn.exec(
158
- 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
159
- nil, nil, nil, nil, nil, nil, nil, nil
160
- ]
161
- )
162
-
163
- # Insertar en la tabla misas
164
- @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
165
-
166
- # Insertar en la tabla sacramentos
167
- @registro_sacramentos = $conn.exec(
168
- 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica) VALUES ($1, $2, $3, $4)', [sacramento,
169
- fecha, celebrante, certifica]
170
- )
171
-
172
- # Confirmar la transacción
173
- $conn.exec('COMMIT')
174
- FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
175
- clear_input_fields
141
+
142
+ def validar_formato_fecha(fecha)
143
+ begin
144
+ Date.strptime(fecha, '%Y/%m/%d') || Date.strptime(fecha, '%Y-%m-%d')
145
+ return true
146
+ rescue ArgumentError
147
+ return false
148
+ end
149
+ end
150
+
151
+ if validar_formato_fecha(fecha) && validar_formato_fecha(fecha_nacimiento)
152
+ $conn.transaction do
153
+ # Insertar en la tabla libros
154
+ @registro_libros = $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)',
155
+ [tomo, page, number])
156
+
157
+ # Insertar en la tabla creyentes
158
+ @registro_creyentes = $conn.exec(
159
+ 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
160
+ name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula
161
+ ]
162
+ )
163
+
164
+ # Insertar en la tabla parroquias
165
+ @registro_parroquias = $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
166
+ [parroquia, sector, parroco])
167
+
168
+ # Insertar en la tabla registros civiles, si no existen datos se crea un registro nuevo con id que corresponda y se llena los demaás datos con nil
169
+ @registro_registros_civiles = $conn.exec(
170
+ 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
171
+ nil, nil, nil, nil, nil, nil, nil, nil
172
+ ]
173
+ )
174
+
175
+ # Insertar en la tabla misas
176
+ @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
177
+
178
+ # Insertar en la tabla sacramentos
179
+ @registro_sacramentos = $conn.exec(
180
+ 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica) VALUES ($1, $2, $3, $4)', [sacramento,
181
+ fecha, celebrante, certifica]
182
+ )
183
+
184
+ # Confirmar la transacción
185
+ $conn.exec('COMMIT')
186
+ FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
187
+ clear_input_fields
188
+ end
189
+ else
190
+ FXMessageBox.warning(self, MBOX_OK, 'Advertencia', 'Formato de fecha incorrecto. Ingrese una fecha válida en formato YYYY/MM/DD.')
176
191
  end
177
192
  end
178
193
 
@@ -2,6 +2,7 @@
2
2
 
3
3
  require 'pg'
4
4
  require 'fox16'
5
+ require 'date'
5
6
  include Fox
6
7
 
7
8
  class Confirmacion < FXMainWindow
@@ -143,42 +144,56 @@ class Confirmacion < FXMainWindow
143
144
  # tabla sacramentos (id, nombre, fecha, celebrante, certifica, padrino, madrina, testigo_novio, testigo_novia, padre, madre, nombres_novia, apellidos_novia, cedula_novia, fk_creyentes, fk_parroquias, fk_registros_civiles, fk_libros)
144
145
  # tabla registros_civiles (id, provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc)
145
146
  # Iniciar una transacción
146
- $conn.transaction do
147
- # Insertar en la tabla libros
148
- @registro_libros = $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)',
149
- [tomo, page, number])
150
-
151
- # Insertar en la tabla creyentes
152
- @registro_creyentes = $conn.exec(
153
- 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
154
- name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula
155
- ]
156
- )
157
-
158
- # Insertar en la tabla parroquias
159
- @registro_parroquias = $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
160
- [parroquia, sector, parroco])
161
-
162
- # Insertar en la tabla registros civiles, si no existen datos se crea un registro nuevo con id que corresponda y se llena los demaás datos con nil
163
- @registro_registros_civiles = $conn.exec(
164
- 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
165
- nil, nil, nil, nil, nil, nil, nil, nil
166
- ]
167
- )
168
-
169
- # Insertar en la tabla misas
170
- @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
171
-
172
- # Insertar en la tabla sacramentos
173
- @registro_sacramentos = $conn.exec(
174
- 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica, padrino) VALUES ($1, $2, $3, $4, $5)', [sacramento,
175
- fecha, celebrante, certifica, padrino]
176
- )
177
-
178
- # Confirmar la transacción
179
- $conn.exec('COMMIT')
180
- FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
181
- clear_input_fields
147
+
148
+ def validar_formato_fecha(fecha)
149
+ begin
150
+ Date.strptime(fecha, '%Y/%m/%d') || Date.strptime(fecha, '%Y-%m-%d')
151
+ return true
152
+ rescue ArgumentError
153
+ return false
154
+ end
155
+ end
156
+
157
+ if validar_formato_fecha(fecha) && validar_formato_fecha(fecha_nacimiento)
158
+ $conn.transaction do
159
+ # Insertar en la tabla libros
160
+ @registro_libros = $conn.exec('INSERT INTO libros (tomo, pagina, numero) VALUES ($1, $2, $3)',
161
+ [tomo, page, number])
162
+
163
+ # Insertar en la tabla creyentes
164
+ @registro_creyentes = $conn.exec(
165
+ 'INSERT INTO creyentes (nombres, apellidos, lugar_nacimiento, fecha_nacimiento, cedula) VALUES ($1, $2, $3, $4, $5)', [
166
+ name, apellidos, lugar_nacimiento, fecha_nacimiento, cedula
167
+ ]
168
+ )
169
+
170
+ # Insertar en la tabla parroquias
171
+ @registro_parroquias = $conn.exec('INSERT INTO parroquias (parroquia, sector, parroco) VALUES ($1, $2, $3)',
172
+ [parroquia, sector, parroco])
173
+
174
+ # Insertar en la tabla registros civiles, si no existen datos se crea un registro nuevo con id que corresponda y se llena los demaás datos con nil
175
+ @registro_registros_civiles = $conn.exec(
176
+ 'INSERT INTO registros_civiles (provincia_rc, canton_rc, parroquia_rc, anio_rc, tomo_rc, pagina_rc, acta_rc, fecha_rc) VALUES ($1, $2, $3, $4, $5, $6, $7, $8)', [
177
+ nil, nil, nil, nil, nil, nil, nil, nil
178
+ ]
179
+ )
180
+
181
+ # Insertar en la tabla misas
182
+ @registro_misas = $conn.exec('INSERT INTO misas (intencion, fecha, hora) VALUES ($1, $2, $3)', [nil, nil, nil])
183
+
184
+ # Insertar en la tabla sacramentos
185
+ @registro_sacramentos = $conn.exec(
186
+ 'INSERT INTO sacramentos (sacramento, fecha, celebrante, certifica, padrino) VALUES ($1, $2, $3, $4, $5)', [sacramento,
187
+ fecha, celebrante, certifica, padrino]
188
+ )
189
+
190
+ # Confirmar la transacción
191
+ $conn.exec('COMMIT')
192
+ FXMessageBox.information(self, MBOX_OK, 'Información', 'Datos guardados correctamente')
193
+ clear_input_fields
194
+ end
195
+ else
196
+ FXMessageBox.warning(self, MBOX_OK, 'Advertencia', 'Formato de fecha incorrecto. Ingrese una fecha válida en formato YYYY/MM/DD.')
182
197
  end
183
198
  end
184
199