0

オンサイト課金サーバーからいくつかのデータにアクセスして、デプロイしているレール アプリに入力しようとしています。Tiny TDS と rake タスクについて掘り下げてみたところ、最適な方法だと思いますが、少し行き詰まっているようです。以下に示すコードは単なる例であり、完成していません! サーバー名が構成ファイルに見つかりませんというエラーが表示され続けます。

タスク :import_customers が行う

RAILS_HOME = File.expand_path(File.join(File.dirname(__FILE__),"../.."))

RAILS_CONFIG = "#{RAILS_HOME}/config"

require "#{RAILS_CONFIG}/environment"

require 'tiny_tds'

client = TinyTds::Client.new(:username => 'user', :password => 'pass', :host => 'SQLSRVR')

result = client.execute("select sitedetails.siteid, company.id as companyid, sitedetails.shortname, company.name,sitedetails.sitename as [Site Name] from company inner join sitedetails on company.id=sitedetails.id left outer join solutionscustinfo s on sitedetails.siteid=s.siteid left outer join paymentconditions a on s.paymentconditions_id=a.id left outer join company agent on company.agent_id=agent.id left outer join sitecontacts billingcontact on billingcontact.contactid=s.billingcontact_id left outer join package p on p.id=package left outer join tariffnames v on v.tariffcode=isnull(s.lcr_tariff,p.lcr_tariff) left outer join tariffnames d on d.tariffcode=isnull(s.data_tariff,p.data_tariff) left outer join tariffnames m on m.tariffcode=isnull(s.mob_tariff,p.mob_tariff) left outer join (select invoiceaddress from sitedetails group by invoiceaddress) ba on ba.invoiceaddress=sitedetails.siteid left outer join discount on discount.id=isnull(s.discount,p.discount) left outer join billrun on billrun.id=s.bill_run left outer join report_profile on report_profile.id=s.report_profile left outer join account_manager on account_manager.id=company.acctmgr_id where company.is_customer<>0 order by company.name,sitedetails.shortname")

result.each do |row|

    puts row

    name = row['name']

    sitename = row['Site Name']

    puts sitename

    @company = Company.all

end

終わり

4

1 に答える 1