Página 1 de 2

[DLL/C#] Fusion Tables de Google

Publicado: 05 May 2012 18:44
por Pabloko
Buenas, hoy os dejo una pequeña dll que he realizado para conectar con las bases de datos del sistema de google Fusion Tables, que va en la herramienta google docs y que funciona basicamente como un sistema de bases de datos SQL en linea

Viene muy bien para aplicaciones donde interese compartir una base de datos entre todos los usuarios, yo lo uso para interconectar aplicaciones de android.

La dll contiene 3 sencillas funciones:

token = GenerateToken (usuariogoogle, pass)
csv = Query(query, token)
csv = QueryData(query, token)

Por partes, GenerateToken obtiene un valor de autentificación de usuario de google que SOLO ES NECESARIO REALIZAR SI VAMOS A EDITAR LA TABLA. La funcion Query lanza una consulta SQL y recibe el toiken, si la tabla esta marcada como publica se puede mandar un token vacio y funciona bien. La funcion QueryData es similar a la anterior a excepcion de que esta sirve para consultas SQL que editen los datos, por ejemplo alter, insert, update... En este caso si es necesario generar un token valido.

Se puede pedir al usuario hacer login (como en el ejemplo adjunto) o disponer de un dummy account y introducir automaticamente el user y la pass, aunque el sistema de login sea mas correcto.

Los datos retornados vienen en un string en formato CSV. si se desea implementar una funcion que convierta este valor a una tabla del estilo tabla["campo"][1] para obtener los valores, sepodria utilizar un codigo similar a este.
--mytable=csvtotable(dllreturn);

function csvtotable(s)
  s = s .. ','        -- ending comma
  local t = {}        -- table to collect fields
  local fieldstart = 1
  repeat
    -- next field is quoted? (start with `"'?)
    if string.find(s, '^"', fieldstart) then
      local a, c
      local i  = fieldstart
      repeat
        -- find closing quote
        a, i, c = string.find(s, '"("?)', i+1)
      until c ~= '"'    -- quote not followed by quote?
      if not i then error('unmatched "') end
      local f = string.sub(s, fieldstart+1, i-1)
      table.insert(t, (string.gsub(f, '""', '"')))
      fieldstart = string.find(s, ',', i) + 1
    else                -- unquoted; find next comma
      local nexti = string.find(s, ',', fieldstart)
      table.insert(t, string.sub(s, fieldstart, nexti-1))
      fieldstart = nexti + 1
    end
  until fieldstart > string.len(s)
  return t
end
Para realizar consultas SQL es completamente igual que por ejemplo con SQLITE, con algunas excepciones, google ofrece una referencia del uso aqui:

https://developers.google.com/fusiontab ... _reference

En el ejemplo adjunto va una tabla que tenia por ahi con algunos productos y sus codigos de barras para un test de un tpv, la tabla es esta:

https://www.google.com/fusiontables/dat ... Xk12eHHqvo

Por tanto el nombre de la tabla sql es 19zJhQeVuo_t-GH0gNRCXfFmUPsptpXk12eHHqvo y se pueden realizar consultas como SELECT * FROM 19zJhQeVuo_t-GH0gNRCXfFmUPsptpXk12eHHqvo WHERE rowid=3...

Descargar
HIDE: ON
Hidebb Message Hidden Description

Re: [DLL/C#] Fusion Tables de Google

Publicado: 05 May 2012 20:52
por Thedary
:'( Dios santooooo !!

Re: [DLL/C#] Fusion Tables de Google

Publicado: 06 May 2012 01:22
por rafaxplayer
way pablo ;)

Re: [DLL/C#] Fusion Tables de Google

Publicado: 07 May 2012 19:29
por abood1987
good :yes: ;)

Re: [DLL/C#] Fusion Tables de Google

Publicado: 08 May 2012 09:19
por Ceone
no se puede bajar de 4shared sin cuenta?

Re: [DLL/C#] Fusion Tables de Google

Publicado: 09 May 2012 01:06
por Thedary
Ceone escribió:no se puede bajar de 4shared sin cuenta?
Cierto, tambien me pasa.

Re: [DLL/C#] Fusion Tables de Google

Publicado: 27 Mar 2013 01:19
por asalcedo
buenas noches he visto el articulo que has publicado de la dll de google fusion, lo que no se es como aplicarla, te explico tengo una tabal en google fusion y necesito que una vez al dia me la descasrgue automaticamente una tarea de windows y me guarde un fichero csv con los datos en un directorio, eso es posible' gracias de antemano por tu ayuda.

Re: [DLL/C#] Fusion Tables de Google

Publicado: 27 Mar 2013 02:47
por Agotaras123
Genial muy buen trabajo.

Re: [DLL/C#] Fusion Tables de Google

Publicado: 27 Mar 2013 17:25
por Pabloko
asalcedo escribió:buenas noches he visto el articulo que has publicado de la dll de google fusion, lo que no se es como aplicarla, te explico tengo una tabal en google fusion y necesito que una vez al dia me la descasrgue automaticamente una tarea de windows y me guarde un fichero csv con los datos en un directorio, eso es posible' gracias de antemano por tu ayuda.
es muy sencillo, simplemente con esta dll te bajas la tabla y con las funciones que he puesto la conviertes a csv y ejecutas la apliccion con las tareas programadas, tan simple

Publicado: 25 Sep 2013 19:35
por Cael
:num1:

Publicado: 28 Sep 2013 07:20
por MURATBOY31
thanks

Publicado: 28 Sep 2013 07:22
por MURATBOY31
how can i find the apz file 'FusionTables.apz' ??

Publicado: 28 Sep 2013 08:04
por MURATBOY31
Fusion Tables API v1.0
would this example still work with this new version ?

Publicado: 28 Sep 2013 14:39
por Pabloko
u should test, idont know and i dont care :)

Publicado: 28 Sep 2013 16:19
por MURATBOY31
u dont care because i dont speak spanish :)

Publicado: 28 Sep 2013 17:28
por Pabloko
i dont care about ams plugins from time ago

Publicado: 28 Sep 2013 19:28
por MURATBOY31
ok does anyone still have this example somewhere so I can try to use it ?

Publicado: 28 Sep 2013 20:54
por Pabloko

Publicado: 29 Sep 2013 07:38
por MURATBOY31
thank u so much pabloko :num1:

Publicado: 11 Jul 2014 10:40
por flaco1413
o.o gracias