2009-09-18 6 views
0

Je cours django sur python sdk de gae.joindre feuille de calcul pour envoyer un message avec gae

Mon application est une application de traitement des commandes pour une petite entreprise. Je souhaite envoyer par courrier électronique un bon de livraison sous forme de feuille de calcul aux clients à la fin d'une commande. Maintenant, j'ai lu les docs et il n'y a aucun problème à envoyer des pièces jointes, juste que seuls certains types de fichiers sont autorisés dans gae.

J'ai créé une feuille de calcul à l'aide de l'API google data, mais mon problème est de savoir comment envoyer la feuille de calcul google au client. Mon appengine se trouve sur un domaine hébergé, donc les comptes Gmail normaux n'y ont pas accès et beaucoup de comptes email clients ne seront même pas gmail, la pièce jointe google sera juste un objet atomique xml pointant vers un doc hébergé sur mon compte qui ne sera pas accessible aux utilisateurs extérieurs de toute façon, non?

Y at-il un moyen de copier cet objet de feuille de calcul et le joindre à l'e-mail, afin qu'il puisse être ouvert localement par les utilisateurs sans droits d'accès à mon google doc, il peut essentiellement être ouvert hors connexion. Mon code ressemble à ceci:

new_entry = gdata.GDataEntry() 
    new_entry.title = gdata.atom.Title(text='Delivery Note from ' + company.company_name) 
    category = gd_client._MakeKindCategory(gdata.docs.service.SPREADSHEET_LABEL) 
    new_entry.category.append(category) 
    doc_entry = gd_client.Post(new_entry, '/feeds/documents/private/full') 
    .....now build the spreadsheet 
    doc_title = 'deliverynote' + '.' + doc_entry.title.type 
    .....build the email body 
    mail.send_mail(sender_address, to_address, subject, body, attachments=[(doc_title, str(doc_entry))]) 

En procédant ainsi, mais lorsque le client reçoit le courrier, quand ils essaient et l'ouvrir, ils obtiennent une erreur inattendue (les mots exacts que Google utilise quand il essaie et l'ouvre) .

L'autre alternative consiste bien sûr à essayer de le convertir en fichier Excel. Les méthodes sont fournies par google pour exporter le fichier en tant que fichier Excel dans le système de fichiers local, mais le programme est alors confronté au problème de le télécharger à nouveau sans aucune intervention manuelle de l'utilisateur. En outre, le type de fichier excel n'est pas supporté par gae en tant que type de pièce jointe légitime.

Quelqu'un a-t-il des idées?

Répondre

0

Question intéressante.

Puisque vous utilisez GData pour le créer, votre application GAE devrait avoir le droit d'en obtenir une copie et de l'attacher. Je ne sais pas dans quel format il serait, et comment le gars qui le reçoit l'utilise bien.

Si vous avez joint une feuille de calcul Google à un e-mail, comment l'ouvrir? Depuis Google fonctionne "sur le web"? Je sais que Google a maintenant une option hors ligne, mais je ne l'ai pas encore essayé. Je pense qu'il faut installer Google Gears et d'autres choses sur la machine locale.

Voulez-vous que les utilisateurs partagent la feuille de calcul ou obtiennent chacun leur propre copie? Pourriez-vous simplement changer les droits pour permettre à plus de gens d'avoir un accès en lecture seule ou de mettre à jour?

Tous vos destinataires ont-ils Excel? Ont-ils tous des comptes Google App?

Neal Walters

Questions connexes