R/db_crear_proyecto.R

Defines functions db_crear_proyecto

Documented in db_crear_proyecto

#' Crea un registro nuevo en la BD para el proyecto
#'
#' @param proyecto nombre del proyecto que se va a registrar en la base de datos, debe ir escrito con la primer letra de cada palabra en mayuscula y las demas en minuscula, sin espacios extra al principio o al final
#' @param ola es el número del levantamiento del proyecto, en caso de ser un proyecto estamos en primer ola por lo que pondriamos ola = 1
#' @param r_analisis nombre del responsable de análisis
#' @param r_procesamiento nombre del responsable de procesamiento
#' @param fecha fecha de recepcion de la base en el formato YYYY-MM-DD
#' @param con_pass cadena de conexion a la BD
#' 
#'
#' @examples
#' # db_crear_proyecto("Product Tracker Divisas",1,"Nahum Yanez Gonzalez","Omar Mata Lemus","2020-08-06")
#'

db_crear_proyecto<-function(proyecto,ola,r_analisis = NA,r_procesamiento = NA,tipo = NA,fecha,con_pass = db_conexion()){

  
  #Limpiar caracteres especiales
  #limpio lo espacios extra
  tabla<-gsub(" ","",proyecto)
  #Convierto las variables a minusculas
  # tabla<-tolower(tabla)
  tabla<-gsub("[][!#$%()*,:;<=>@^`|~?{}/¿]", "", tabla)
  tabla<-gsub("-", "", tabla)
  tabla<-gsub("\"", "", tabla)
  tabla<- paste0(tabla,"_",ola)
  tabla_preguntas <- paste0(tabla,"_preguntas")
  tabla_respuestas <- paste0(tabla,"_respuestas")
  query<-DBI::dbSendQuery(con_pass,
                     paste0("INSERT INTO proyectos (proyecto,ola,tabla,tabla_preguntas,tabla_respuestas,responsable_analisis, responsable_procesamiento,tipo,fecha)
                     VALUES ('",proyecto,"',",
                            "'",ola,"',",
                            "'",tabla,"',",
                            "'",tabla_preguntas,"',",
                            "'",tabla_respuestas,"',",
                            "'",r_analisis,"',",
                            "'",r_procesamiento,"',",
                            "'",tipo,"',",
                            "'",fecha,"');"))
  DBI::dbClearResult(query)
  DBI::dbDisconnect(con_pass)
}
pelishk/upax_library documentation built on Nov. 28, 2022, 10:45 a.m.