Quelqu'un peut-il expliquer à intégrer les MYOB dans des rails l'applicationComment yo utilisation MYOB dans RAILS application
Répondre
intégration à MYOB est pas aussi simple que cela peut paraître.
Afin de s'intégrer à MYOB, vous devez installer les pilotes ODBC, installer l'application MYOB et accéder directement au fichier de société MYOB.
Quelles sont vos exigences et objectifs d'intégration?
La solution que nous choisissons est de créer une application de bureau qui facilitera l'intégration entre l'application Web et MYOB.
espérons que cela aide.
Vous pouvez, cependant, la seule façon de vraiment le faire est avec le pilote MYOB ODBC. La façon dont ce pilote fonctionne est qu'il utilise Myobp.exe comme intermédiaire entre ODBC et le fichier .MYO.
Le pilote MYOB ODBC présente une interface SQL à MYOB, mais il existe certaines mises en garde. Ce n'est pas un réel Interface SQL à MYOB. Les données que vous pouvez entrer et sortir sont étroitement liées par les fonctions d'importation et d'exportation que MYOB présente dans le programme lui-même. Pour obtenir des données, avec l'interface ODBC, vous pouvez écrire des requêtes SQL, et même certaines fonctions de type SQL peuvent être dans ces requêtes, mais vous pouvez parfois rencontrer certaines choses qui vous intercepteront. Pour obtenir des données, le pilote ODBC présente utilise un schéma de tables avec le préfixe "Import_", avec ces tables tout ce que vous pouvez faire est d'importer des données et elles ne renverront pas des choses comme le numéro de facture que vous venez d'importer. Cela signifie également que vous ne pouvez pas mettre à jour des entrées existantes de la même manière qu'avec une vraie interface SQL. Cependant, certaines importations de données entraîneront une mise à jour des données existantes si certains des champs correspondent. Mon expérience avec MYOB et son interface ODBC concerne principalement l'obtention de commandes à partir d'un système que j'ai écrit dans MYOB, donc certaines choses peuvent être faites. J'ai écrit ma première version de ce système dans Rails, mais vous ne pouvez pas utiliser les modèles Rails standard sans ajuster leur fonctionnement car Rails est très orienté sur la façon dont il s'attend à ce que la base de données agisse. Plus récemment, je l'ai réécrit dans Clojure et j'ai utilisé des requêtes manuscrites.
Pour les insertions multilignes (par exemple les lignes d'une facture), MYOB utilise une transaction comme enveloppe pour indiquer les lignes qui doivent figurer sur une facture. Donc, votre meilleur pari si vous voulez utiliser Rails, serait d'éviter d'utiliser les modèles Rails, et peut-être d'écrire des requêtes SQL directes et d'interfacer avec vos contrôleurs et vos vues.
Je ne peux pas me rendre à mon ancien code en ce moment, mais il est quelque chose le long des lignes de celle-ci:
def create_myob_invoice(iso)
# We can assume we have the job
# Now, for each iso line, we add an invoice
latest_invoice_number = Sale.find(:first, :order => 'InvoiceNumber DESC').InvoiceNumber.to_i
if latest_invoice_number
# We need to wrap it all in a transaction so MYOB knows they're all the one invoice
MyobDatabase.transaction do
iso.lines.each do |line|
new_service_line = ImportServiceSale.new
# Map iso fields to MYOB service sale fields
# e.g. suff like:
new_service_line.Description = "#{line.sDescription}"
new_service_line.save
end
end
end
end
Vous pouvez également être en mesure de trouver quelque chose pour aider plus à: http://freelancing-gods.com/posts/talking_to_myob_with_ruby
Intégrer de quelle façon? –