Where communities thrive


  • Join over 1.5M+ people
  • Join over 100K+ communities
  • Free without limits
  • Create your own community
People
Activity
    Josep Prat
    @jlprat
    levanta tu app! Muy fan! :D
    Cada dia que pasa soy mas incapaz de hablar de cosas tecnicas en castellano
    elyphas
    @elyphas
    @ignasi35 , si acabo de migrar a sbt 1.1.1 y play 2.6.11, tuve varios problemas con las dependencias pero ya se resolvio,
    @ignasi35 ; sbt run
    @jlprat ; pense que eras aleman, :)
    Josep Prat
    @jlprat
    casi
    elyphas
    @elyphas
    @jlprat ; si indirectamente, por que apenas estoy aprendiendo scala, scalajs, akka, y me baso mucho en el scalajs-spa-tutorial.
    Josep Prat
    @jlprat
    7 anos viviendo en Alemania cambian a uno....
    elyphas
    @elyphas
    @jlprat , aahhh
    @jlprat ; español?
    Josep Prat
    @jlprat
    si
    elyphas
    @elyphas
    :)
    elyphas
    @elyphas
    podria ser esto?
    c.z.h.p.HikariPool - db - Thread starvation or clock leap detected (housekeeper delta=53s590ms853µs311ns)
    Josep Prat
    @jlprat
    podría ser
    Puede ser que tengas varios threads activos consultando la base de datos haciendo que tu máquina vaya más lenta cada vez
    elyphas
    @elyphas
    ah ok
    elyphas
    @elyphas
    esto podria estar originando el problema con hikari ??
    class ApiService @Inject()(
                                protected val procesos: CProcesos,
                                protected val oficina: COficina,
                                protected val partida: CPartida,
                                protected val presentacion: CPresentacion,
                                protected val articulo: CArticulo,
                                protected val pedido: CPedido,
                                protected val qrypedidodatosgrales: CQryPedidoDatosGrales,
                                protected val qrydetpedido: CQryDetallePedido,
                                protected val detpedido: CDetPedido,
                                protected val programa: CPrograma,
                                protected val lstbienes: CListBienes,
                                protected val usuario: CUsuarios,
                                protected val proveedor: CProveedores,
                                protected val renglon: CRenglon,
                                protected val aprobar: CAprobar,
                                protected val calendario: CCalendario,
                                protected val partidaAnexo: CPartidaAnexo,
                                protected val diaInhabil: CDiaInhabil,
                                protected val descripcionCompra: CDescripcionCompra,
                                protected val licitantes: CLicitantes,
                                protected val provLicitante: CProvLicitante,
                                protected val renglonDictamen: CRenglonDictamen,
                                protected val totalCotizacion: CTotalCotizacion,
                                protected val oficioPresupuesto: COficioPresupuesto,
                                protected val seguimiento: CSeguimiento,
                                protected val solicitudPago: CSolicitudPago,
                                protected val detSolicitudPago: CDetSolicitudPago,
                                protected val rptSolicitudPago: CRptSolicitudPago,
                                protected val precioReferencia: CPrecioReferencia
                              ) extends Api {
    todas esas clases son parecidas a esta:
    class CArticulo @Inject()( @NamedDatabase("sicap") protected val dbConfigProvider: DatabaseConfigProvider )
    extends HasDatabaseConfigProvider[JdbcProfile] {
    
      import driver.api._
    
      private val query = TableQuery[tabla]
    
      private class tabla(tag: Tag) extends Table[Articulo](tag, "tblartic") {
        def cve_articulo            = column[String]("cve_articulo")
        def descripcion             = column[String]("descripcion")
        def unidad                  = column[String]("unidad")
        def presentacion               = column[Option[Int]]("presentacion")
        def unid_med_pres               = column[Option[String]]("unid_med_pres")
        def partida                 = column[String]("partida")
        def clave_cabms                 = column[Option[String]]("clave_cabms")
        def cb                      = column[Option[Boolean]]("cb")
        def iva                     = column[Option[Double]]("iva")
        def baja                    = column[Option[Boolean]]("baja")
    
        def * = (cve_articulo, descripcion, unidad, presentacion, unid_med_pres, partida, clave_cabms, cb, iva, baja )<> (Articulo.tupled, Articulo.unapply)
      }
    
      def ListAll: Future[Seq[Articulo]] = db.run(query result)
    
      def ById(id: String) : Future[Seq[Articulo]] = {
        val Search = query filter(_.cve_articulo === id)
        db.run(Search result)
      }
    
      def createCve(partida: String): String = partida match {
        case "25301" => ""
        case s => {
          val (fst, snd) = s.splitAt(2)
          implicit val part = "0" + fst + '.' + snd + '.'
          getLastConsecut
        }
        case _=> ""
      }
    
      def getLastConsecut( implicit part: String ): String = {
        val Search = query.filter(_.cve_articulo.startsWith(part))  sortBy(p => p.cve_articulo.asc) map (_.cve_articulo)
        val consec = db.run(Search result)
        //.last
        "todavía No"
        //part + (Consec.takeRight(4).toInt + 1)
      }
    
    
      def getDescripcion(clave: String): Future[Seq[String]] = {
        val Search = query.filter(_.cve_articulo === clave) map (_.descripcion)
        db.run(Search result)
      }
    
    
      def searchDescripcion(str: String): Future[Seq[Articulo]] = {
        val words = str.split(" ")
    
        val wordsCond = for {
          word <- str.split(" ")
        } yield ( "%" + word + "%")
    
        val Search = query.filter { item =>
            wordsCond.map( w => item.descripcion like w ).reduceLeft(_ && _)
        }    //.filter( art => art.partida === "21101")
    
        val finalResult = db.run(Search result) //println(Search.result.statements.headOption) //imprimir consulta sql
    
        val retornar = for {
          r <- finalResult
        } yield {
            if (r.length > 50) Seq(Articulo())
            else
              for {
                f <- r
              } yield (f)
        }
        retornar
      }
      def insert(art: Articulo): Future[Seq[Articulo]] = db.run(query += art).map(p => Seq(art))
    
      def save(art: Articulo): Future[Seq[Articulo]] ={
        val Save = query.filter(_.cve_articulo === art.cve_articulo)
          .map( a =>
            (    a.cve_articulo,
              a.descripcion,
              a.unidad,
              a.presentacion,
              a.unid_med_pres,
              a.partida,
              a.clave_cabms,
              a.cb,
              a.iva,
              a.baja
              )
          )
          .update(
            art.cve_articulo, art.descripcion,
            art.unidad, art.presentacion, art.unid_med_pres, art.partida,
            art.clave_cabms, art.cb, art.iva, art.baja
          )
        val returna = for {
          _ <- db.run(Save)
          articulo <- ById(art.cve_articulo)
        } yield { articulo }
        returna
      }
    }
    (no puedo usar /@all, o sí?)
    NoTengo2iter
    @notengo2iter_twitter
    Saludos a Juanelo
    Damian Albrun
    @insdami
    Este parece interesante y sencillo scala/bug#9968, deje unos comentarios
    Jorge
    @jvican
    :+1:
    Jose Luis Cervantes
    @jlzaratec
    buenos días comunidad, alguien sabe a que se debe el error ? Failed to construct terminal; falling back to unsupported
    java.lang.NumberFormatException: For input string: "0x100"
    al instalar sbt en MacOS
    he buscado información respecto a la solución pero no he hallado información sobre su solución
    Jose Luis Cervantes
    @jlzaratec
    buenas tardes , muchas gracias comunidad pude resolver el problema,buscando en stackoverflow mencionan que es un detalle con ncurses le instale una version anterior y ya funciono
    Miguel Pérez Pasalodos
    @mpasa
    A mi me ha pasado al ejecutar "sbt console" de algunos proyectos, pero solo como warning, y en Linux
    Javiera Born
    @javierab
    Hola! Acabo de unirme a translate-coursera y quisiera ayudar a traducir el curso de Scala.
    Jorge
    @jvican
    Hola Javiera, puedes entrar en ‘translate.coursera.org’, regístrate y encontrar el curso que quieres traducir?
    Javiera Born
    @javierab
    eso hice! creo que estoy lista para traducir. gracias
    Jorge
    @jvican
    Gracias a ti!
    Juan Pablo Vergara
    @juanpavergara
    Hola
    :D
    Tengo una pregunta acerca de type classes + implicits que no he podido resolver
    Espero que alguien me pueda dar una mano con esto
    ¿Es posible hacer uso del type member sin uso de pattern match?
    Miguel Pérez Pasalodos
    @mpasa
    Sin pattern match te dice que no puede encontrar un implicit?
    Diría que necesitas evidencia de que la type class existe en bar
    def bar[T <: MySuperType : MyTypeClass](t: T)
    Juan Pablo Vergara
    @juanpavergara
    Sin pattern match efectivamente dice eso @mpasa
    El problema es el type erasure
    En algún momento (o en bar o en el llamado a bar) se debe hacer explícita dicha evidencia
    Juan Pablo Vergara
    @juanpavergara
    @mpasa
    Damian Albrun
    @insdami
    Alguien usando shapeless que haya migrado a 2.12.5 o 2.12.6? Estoy teniendo StackOverflowError cuando intenta resolver macros
    Jorge
    @jvican
    Prueba aumentando el parámetro Xss a 2gb en la JVM, shapeless normalmente abusa la recursividad en implicit search
    Damian Albrun
    @insdami
    Funcion con Xss2G y Xmx2G, gracias!