quickbooks 0.4.0 → 0.9.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data.tar.gz.sig +0 -0
- data/History.txt +23 -0
- data/License.txt +54 -0
- data/Manifest.txt +73 -0
- data/README.txt +79 -0
- data/Rakefile +17 -78
- data/lib/quickbooks.rb +153 -7
- data/lib/quickbooks/adaptability.rb +67 -0
- data/lib/quickbooks/adapters/http_adapter.rb +94 -0
- data/lib/quickbooks/adapters/https_adapter.rb +57 -0
- data/lib/quickbooks/adapters/ole_adapter.rb +141 -110
- data/lib/quickbooks/adapters/spew_adapter.rb +39 -0
- data/lib/quickbooks/adapters/tcp_adapter.rb +71 -0
- data/lib/quickbooks/adapters/test_adapter.rb +62 -0
- data/lib/quickbooks/element.rb +385 -0
- data/lib/quickbooks/element_collection.rb +105 -0
- data/lib/quickbooks/extlib.rb +8 -0
- data/lib/quickbooks/extlib/assertions.rb +8 -0
- data/lib/quickbooks/extlib/class.rb +98 -0
- data/lib/quickbooks/extlib/days_and_times.rb +10 -0
- data/lib/quickbooks/extlib/days_and_times/duration.rb +362 -0
- data/lib/quickbooks/extlib/days_and_times/numeric.rb +48 -0
- data/lib/quickbooks/extlib/days_and_times/object.rb +19 -0
- data/lib/quickbooks/extlib/days_and_times/time.rb +137 -0
- data/lib/quickbooks/extlib/hash.rb +327 -0
- data/lib/quickbooks/extlib/hook.rb +366 -0
- data/lib/quickbooks/extlib/inflection.rb +436 -0
- data/lib/quickbooks/extlib/logger.rb +202 -0
- data/lib/quickbooks/extlib/object.rb +162 -0
- data/lib/quickbooks/extlib/pathname.rb +15 -0
- data/lib/quickbooks/extlib/rubygems.rb +38 -0
- data/lib/quickbooks/extlib/string.rb +32 -0
- data/lib/quickbooks/extlib/time.rb +41 -0
- data/lib/quickbooks/model.rb +503 -121
- data/lib/quickbooks/option.rb +95 -0
- data/lib/quickbooks/property.rb +69 -0
- data/lib/quickbooks/ruby_ext.rb +251 -0
- data/lib/quickbooks/type.rb +75 -0
- data/lib/quickbooks/types.rb +58 -0
- data/lib/quickbooks/version.rb +10 -0
- data/lib/quickbooks/xsd.rb +243 -0
- data/lib/quickbooks/xsd/attribute.rb +57 -0
- data/lib/quickbooks/xsd/choice.rb +94 -0
- data/lib/quickbooks/xsd/complex_type.rb +77 -0
- data/lib/quickbooks/xsd/element.rb +214 -0
- data/lib/quickbooks/xsd/group.rb +94 -0
- data/lib/quickbooks/xsd/restriction.rb +51 -0
- data/lib/quickbooks/xsd/sequence.rb +85 -0
- data/lib/quickbooks/xsd/simple_type.rb +87 -0
- data/lib/quickbooks/xsd/union.rb +70 -0
- data/lib/quickbooks/xsd/validation.rb +89 -0
- data/lib/quickbooks/xsd/xml_parse.rb +80 -0
- data/quickbooks.gemspec +36 -0
- data/source/qbxml21_demo.xsd +2223 -0
- data/source/qbxmlops_demo.xsd +483 -0
- data/source/qbxmltypes.xsd +160 -0
- data/spec/association_spec.rb +5 -0
- data/spec/element_collection_spec.rb +8 -0
- data/spec/find_spec.rb +30 -0
- data/spec/lib/quickbooks/element_spec.rb +83 -0
- data/spec/lib/quickbooks/elements/sales_order_add_spec.rb +14 -0
- data/spec/lib/quickbooks/elements/vendor_add_spec.rb +78 -0
- data/spec/lib/quickbooks/model_spec.rb +89 -0
- data/spec/lib/quickbooks/models/customer_spec.rb +52 -0
- data/spec/lib/quickbooks/models/invoice_spec.rb +12 -0
- data/spec/lib/quickbooks/models/sales_order_line_spec.rb +0 -0
- data/spec/lib/quickbooks/models/sales_order_spec.rb +145 -0
- data/spec/lib/quickbooks/xsd/choice_spec.rb +18 -0
- data/spec/pending_spec.rb +11 -0
- data/spec/quickbooks_spec.rb +38 -0
- data/spec/repeatable_spec.rb +20 -0
- data/spec/requires_spec.rb +10 -0
- data/spec/spec_helper.rb +5 -0
- data/spec/validation_spec.rb +24 -0
- metadata +133 -285
- metadata.gz.sig +0 -0
- data/LICENSE +0 -16
- data/README +0 -49
- data/doc/classes/Array.html +0 -368
- data/doc/classes/Array.src/M000026.html +0 -18
- data/doc/classes/Array.src/M000027.html +0 -21
- data/doc/classes/Array.src/M000028.html +0 -18
- data/doc/classes/Array.src/M000029.html +0 -19
- data/doc/classes/Array.src/M000030.html +0 -18
- data/doc/classes/Array.src/M000031.html +0 -23
- data/doc/classes/Array.src/M000032.html +0 -18
- data/doc/classes/Array.src/M000033.html +0 -18
- data/doc/classes/Array.src/M000034.html +0 -18
- data/doc/classes/Array.src/M000035.html +0 -19
- data/doc/classes/Array.src/M000036.html +0 -18
- data/doc/classes/Array.src/M000037.html +0 -23
- data/doc/classes/Array.src/M000038.html +0 -18
- data/doc/classes/Array.src/M000039.html +0 -21
- data/doc/classes/Array.src/M000040.html +0 -18
- data/doc/classes/Array.src/M000041.html +0 -18
- data/doc/classes/Class.html +0 -171
- data/doc/classes/Class.src/M000042.html +0 -18
- data/doc/classes/Class.src/M000043.html +0 -18
- data/doc/classes/Hash.html +0 -516
- data/doc/classes/Hash.src/M000001.html +0 -18
- data/doc/classes/Hash.src/M000002.html +0 -21
- data/doc/classes/Hash.src/M000003.html +0 -18
- data/doc/classes/Hash.src/M000004.html +0 -21
- data/doc/classes/Hash.src/M000005.html +0 -18
- data/doc/classes/Hash.src/M000006.html +0 -20
- data/doc/classes/Hash.src/M000007.html +0 -18
- data/doc/classes/Hash.src/M000008.html +0 -22
- data/doc/classes/Hash.src/M000009.html +0 -18
- data/doc/classes/Hash.src/M000010.html +0 -21
- data/doc/classes/Hash.src/M000011.html +0 -24
- data/doc/classes/Hash.src/M000012.html +0 -18
- data/doc/classes/Hash.src/M000013.html +0 -21
- data/doc/classes/Hash.src/M000014.html +0 -18
- data/doc/classes/Hash.src/M000015.html +0 -21
- data/doc/classes/Hash.src/M000016.html +0 -18
- data/doc/classes/Hash.src/M000017.html +0 -21
- data/doc/classes/Hash.src/M000018.html +0 -27
- data/doc/classes/Hash.src/M000019.html +0 -20
- data/doc/classes/Hash.src/M000020.html +0 -18
- data/doc/classes/Hash.src/M000021.html +0 -18
- data/doc/classes/Hash.src/M000022.html +0 -18
- data/doc/classes/Hash.src/M000023.html +0 -18
- data/doc/classes/Hash.src/M000024.html +0 -18
- data/doc/classes/Hash.src/M000025.html +0 -28
- data/doc/classes/Object.html +0 -278
- data/doc/classes/Object.src/M000044.html +0 -24
- data/doc/classes/Object.src/M000045.html +0 -19
- data/doc/classes/Object.src/M000046.html +0 -24
- data/doc/classes/Object.src/M000047.html +0 -18
- data/doc/classes/Object.src/M000048.html +0 -19
- data/doc/classes/Object.src/M000049.html +0 -18
- data/doc/classes/Object.src/M000050.html +0 -18
- data/doc/classes/Object.src/M000051.html +0 -18
- data/doc/classes/Qbxml.html +0 -131
- data/doc/classes/Qbxml/Request.html +0 -224
- data/doc/classes/Qbxml/Request.src/M000132.html +0 -66
- data/doc/classes/Qbxml/Request.src/M000133.html +0 -19
- data/doc/classes/Qbxml/Request.src/M000134.html +0 -83
- data/doc/classes/Qbxml/RequestSet.html +0 -199
- data/doc/classes/Qbxml/RequestSet.src/M000135.html +0 -22
- data/doc/classes/Qbxml/RequestSet.src/M000136.html +0 -26
- data/doc/classes/Qbxml/RequestSet.src/M000137.html +0 -18
- data/doc/classes/Qbxml/RequestSet.src/M000138.html +0 -22
- data/doc/classes/Qbxml/Response.html +0 -302
- data/doc/classes/Qbxml/Response.src/M000123.html +0 -24
- data/doc/classes/Qbxml/Response.src/M000124.html +0 -19
- data/doc/classes/Qbxml/Response.src/M000125.html +0 -55
- data/doc/classes/Qbxml/Response.src/M000126.html +0 -18
- data/doc/classes/Qbxml/Response.src/M000127.html +0 -18
- data/doc/classes/Qbxml/Response.src/M000128.html +0 -18
- data/doc/classes/Qbxml/Response.src/M000129.html +0 -18
- data/doc/classes/Qbxml/Response.src/M000130.html +0 -18
- data/doc/classes/Qbxml/Response.src/M000131.html +0 -63
- data/doc/classes/Qbxml/ResponseSet.html +0 -244
- data/doc/classes/Qbxml/ResponseSet.src/M000116.html +0 -22
- data/doc/classes/Qbxml/ResponseSet.src/M000117.html +0 -26
- data/doc/classes/Qbxml/ResponseSet.src/M000118.html +0 -24
- data/doc/classes/Qbxml/ResponseSet.src/M000119.html +0 -20
- data/doc/classes/Qbxml/ResponseSet.src/M000120.html +0 -27
- data/doc/classes/Qbxml/ResponseSet.src/M000121.html +0 -18
- data/doc/classes/Qbxml/ResponseSet.src/M000122.html +0 -18
- data/doc/classes/Quickbooks.html +0 -196
- data/doc/classes/Quickbooks/Address.html +0 -139
- data/doc/classes/Quickbooks/Address.src/M000115.html +0 -19
- data/doc/classes/Quickbooks/Base.html +0 -567
- data/doc/classes/Quickbooks/Base.src/M000095.html +0 -18
- data/doc/classes/Quickbooks/Base.src/M000096.html +0 -20
- data/doc/classes/Quickbooks/Base.src/M000097.html +0 -19
- data/doc/classes/Quickbooks/Base.src/M000098.html +0 -18
- data/doc/classes/Quickbooks/Base.src/M000099.html +0 -19
- data/doc/classes/Quickbooks/Base.src/M000100.html +0 -30
- data/doc/classes/Quickbooks/Base.src/M000101.html +0 -22
- data/doc/classes/Quickbooks/Base.src/M000102.html +0 -30
- data/doc/classes/Quickbooks/Base.src/M000103.html +0 -19
- data/doc/classes/Quickbooks/Base.src/M000104.html +0 -19
- data/doc/classes/Quickbooks/Base.src/M000105.html +0 -18
- data/doc/classes/Quickbooks/Base.src/M000106.html +0 -18
- data/doc/classes/Quickbooks/Base.src/M000107.html +0 -19
- data/doc/classes/Quickbooks/Base.src/M000108.html +0 -18
- data/doc/classes/Quickbooks/Base.src/M000109.html +0 -45
- data/doc/classes/Quickbooks/Base.src/M000110.html +0 -18
- data/doc/classes/Quickbooks/Base.src/M000111.html +0 -18
- data/doc/classes/Quickbooks/Base.src/M000112.html +0 -20
- data/doc/classes/Quickbooks/BillAddress.html +0 -113
- data/doc/classes/Quickbooks/CreditCardInfo.html +0 -113
- data/doc/classes/Quickbooks/Customer.html +0 -113
- data/doc/classes/Quickbooks/CustomerTypeRef.html +0 -113
- data/doc/classes/Quickbooks/Deleted.html +0 -113
- data/doc/classes/Quickbooks/ItemSalesTaxRef.html +0 -113
- data/doc/classes/Quickbooks/JobTypeRef.html +0 -113
- data/doc/classes/Quickbooks/ListDeleted.html +0 -139
- data/doc/classes/Quickbooks/ListDeleted.src/M000114.html +0 -18
- data/doc/classes/Quickbooks/ListItem.html +0 -170
- data/doc/classes/Quickbooks/ListItem.src/M000093.html +0 -20
- data/doc/classes/Quickbooks/ListItem.src/M000094.html +0 -18
- data/doc/classes/Quickbooks/Model.html +0 -462
- data/doc/classes/Quickbooks/Model.src/M000073.html +0 -24
- data/doc/classes/Quickbooks/Model.src/M000074.html +0 -19
- data/doc/classes/Quickbooks/Model.src/M000075.html +0 -18
- data/doc/classes/Quickbooks/Model.src/M000076.html +0 -18
- data/doc/classes/Quickbooks/Model.src/M000077.html +0 -18
- data/doc/classes/Quickbooks/Model.src/M000078.html +0 -22
- data/doc/classes/Quickbooks/Model.src/M000079.html +0 -32
- data/doc/classes/Quickbooks/Model.src/M000080.html +0 -32
- data/doc/classes/Quickbooks/Model.src/M000081.html +0 -18
- data/doc/classes/Quickbooks/Model.src/M000082.html +0 -18
- data/doc/classes/Quickbooks/Model.src/M000083.html +0 -22
- data/doc/classes/Quickbooks/Model.src/M000084.html +0 -23
- data/doc/classes/Quickbooks/Model.src/M000085.html +0 -18
- data/doc/classes/Quickbooks/Model.src/M000086.html +0 -21
- data/doc/classes/Quickbooks/Model.src/M000087.html +0 -26
- data/doc/classes/Quickbooks/Model.src/M000088.html +0 -26
- data/doc/classes/Quickbooks/Model.src/M000089.html +0 -26
- data/doc/classes/Quickbooks/Model.src/M000090.html +0 -21
- data/doc/classes/Quickbooks/Model.src/M000091.html +0 -23
- data/doc/classes/Quickbooks/OleAdapter.html +0 -129
- data/doc/classes/Quickbooks/OleAdapter/Connection.html +0 -343
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000058.html +0 -18
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000059.html +0 -19
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000060.html +0 -24
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000061.html +0 -18
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000062.html +0 -18
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000063.html +0 -21
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000064.html +0 -24
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000065.html +0 -20
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000066.html +0 -24
- data/doc/classes/Quickbooks/OleAdapter/Connection.src/M000067.html +0 -24
- data/doc/classes/Quickbooks/OleAdapter/Ole.html +0 -209
- data/doc/classes/Quickbooks/OleAdapter/Ole.src/M000068.html +0 -21
- data/doc/classes/Quickbooks/OleAdapter/Ole.src/M000069.html +0 -22
- data/doc/classes/Quickbooks/OleAdapter/Ole.src/M000070.html +0 -18
- data/doc/classes/Quickbooks/ParentRef.html +0 -113
- data/doc/classes/Quickbooks/PreferredPaymentMethodRef.html +0 -113
- data/doc/classes/Quickbooks/PriceLevelRef.html +0 -113
- data/doc/classes/Quickbooks/QbxmlDebugAdapter.html +0 -111
- data/doc/classes/Quickbooks/QbxmlDebugAdapter/Connection.html +0 -139
- data/doc/classes/Quickbooks/QbxmlDebugAdapter/Connection.src/M000057.html +0 -18
- data/doc/classes/Quickbooks/Ref.html +0 -146
- data/doc/classes/Quickbooks/Ref.src/M000113.html +0 -18
- data/doc/classes/Quickbooks/SalesRepRef.html +0 -113
- data/doc/classes/Quickbooks/SalesTaxCodeRef.html +0 -113
- data/doc/classes/Quickbooks/ShipAddress.html +0 -113
- data/doc/classes/Quickbooks/TermsRef.html +0 -113
- data/doc/classes/Quickbooks/Transaction.html +0 -154
- data/doc/classes/Quickbooks/Transaction.src/M000071.html +0 -19
- data/doc/classes/Quickbooks/Transaction.src/M000072.html +0 -18
- data/doc/classes/Quickbooks/TxnDeleted.html +0 -139
- data/doc/classes/Quickbooks/TxnDeleted.src/M000092.html +0 -18
- data/doc/classes/String.html +0 -203
- data/doc/classes/String.src/M000052.html +0 -18
- data/doc/classes/String.src/M000053.html +0 -18
- data/doc/classes/String.src/M000054.html +0 -18
- data/doc/classes/String.src/M000055.html +0 -18
- data/doc/classes/String.src/M000056.html +0 -18
- data/doc/created.rid +0 -1
- data/doc/files/LICENSE.html +0 -129
- data/doc/files/README.html +0 -225
- data/doc/files/lib/qbxml/request_rb.html +0 -110
- data/doc/files/lib/qbxml/response_rb.html +0 -109
- data/doc/files/lib/qbxml/support_rb.html +0 -101
- data/doc/files/lib/qbxml_rb.html +0 -122
- data/doc/files/lib/quickbooks/adapters/ole_adapter_rb.html +0 -108
- data/doc/files/lib/quickbooks/adapters/qbxml_debug_adapter_rb.html +0 -108
- data/doc/files/lib/quickbooks/base_rb.html +0 -327
- data/doc/files/lib/quickbooks/model_rb.html +0 -108
- data/doc/files/lib/quickbooks/models/common/address_rb.html +0 -101
- data/doc/files/lib/quickbooks/models/common/all_refs_rb.html +0 -101
- data/doc/files/lib/quickbooks/models/customer/credit_card_info_rb.html +0 -101
- data/doc/files/lib/quickbooks/models/customer_rb.html +0 -110
- data/doc/files/lib/quickbooks/models/deleted_rb.html +0 -101
- data/doc/files/lib/quickbooks/models/list_item_rb.html +0 -101
- data/doc/files/lib/quickbooks/models/transaction_rb.html +0 -101
- data/doc/files/lib/quickbooks/ruby_magic_rb.html +0 -120
- data/doc/files/lib/quickbooks_rb.html +0 -125
- data/doc/fr_class_index.html +0 -64
- data/doc/fr_file_index.html +0 -45
- data/doc/fr_method_index.html +0 -164
- data/doc/index.html +0 -24
- data/doc/rdoc-style.css +0 -208
- data/lib/qbxml.rb +0 -3
- data/lib/qbxml/request.rb +0 -207
- data/lib/qbxml/response.rb +0 -197
- data/lib/qbxml/support.rb +0 -130
- data/lib/quickbooks/adapters/qbxml_debug_adapter.rb +0 -10
- data/lib/quickbooks/base.rb +0 -277
- data/lib/quickbooks/models/common/address.rb +0 -14
- data/lib/quickbooks/models/common/all_refs.rb +0 -37
- data/lib/quickbooks/models/customer.rb +0 -70
- data/lib/quickbooks/models/customer/credit_card_info.rb +0 -5
- data/lib/quickbooks/models/deleted.rb +0 -22
- data/lib/quickbooks/models/list_item.rb +0 -41
- data/lib/quickbooks/models/transaction.rb +0 -49
- data/lib/quickbooks/ruby_magic.rb +0 -213
|
@@ -1,19 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
-
<!DOCTYPE html
|
|
3
|
-
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
-
|
|
6
|
-
<html>
|
|
7
|
-
<head>
|
|
8
|
-
<title>is_one_of? (Object)</title>
|
|
9
|
-
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
-
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
-
</head>
|
|
12
|
-
<body class="standalone-code">
|
|
13
|
-
<pre><span class="ruby-comment cmt"># File lib/quickbooks/ruby_magic.rb, line 34</span>
|
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_one_of?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">ary</span>)
|
|
15
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">"exists_in? requires an array to be passed"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-identifier">ary</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Array</span>)
|
|
16
|
-
<span class="ruby-identifier">ary</span>.<span class="ruby-identifier">flatten</span>.<span class="ruby-identifier">include?</span>(<span class="ruby-keyword kw">self</span>)
|
|
17
|
-
<span class="ruby-keyword kw">end</span></pre>
|
|
18
|
-
</body>
|
|
19
|
-
</html>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
-
<!DOCTYPE html
|
|
3
|
-
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
-
|
|
6
|
-
<html>
|
|
7
|
-
<head>
|
|
8
|
-
<title>is_not_one_of? (Object)</title>
|
|
9
|
-
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
-
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
-
</head>
|
|
12
|
-
<body class="standalone-code">
|
|
13
|
-
<pre><span class="ruby-comment cmt"># File lib/quickbooks/ruby_magic.rb, line 39</span>
|
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">is_not_one_of?</span>(<span class="ruby-operator">*</span><span class="ruby-identifier">ary</span>)
|
|
15
|
-
<span class="ruby-operator">!</span><span class="ruby-identifier">is_one_of?</span>(<span class="ruby-identifier">ary</span>)
|
|
16
|
-
<span class="ruby-keyword kw">end</span></pre>
|
|
17
|
-
</body>
|
|
18
|
-
</html>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
-
<!DOCTYPE html
|
|
3
|
-
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
-
|
|
6
|
-
<html>
|
|
7
|
-
<head>
|
|
8
|
-
<title>errors (Object)</title>
|
|
9
|
-
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
-
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
-
</head>
|
|
12
|
-
<body class="standalone-code">
|
|
13
|
-
<pre><span class="ruby-comment cmt"># File lib/quickbooks/ruby_magic.rb, line 44</span>
|
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">errors</span>
|
|
15
|
-
<span class="ruby-ivar">@errors</span> <span class="ruby-operator">||=</span> []
|
|
16
|
-
<span class="ruby-keyword kw">end</span></pre>
|
|
17
|
-
</body>
|
|
18
|
-
</html>
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
-
<!DOCTYPE html
|
|
3
|
-
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
-
|
|
6
|
-
<html>
|
|
7
|
-
<head>
|
|
8
|
-
<title>error? (Object)</title>
|
|
9
|
-
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
-
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
-
</head>
|
|
12
|
-
<body class="standalone-code">
|
|
13
|
-
<pre><span class="ruby-comment cmt"># File lib/quickbooks/ruby_magic.rb, line 47</span>
|
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">error?</span>
|
|
15
|
-
<span class="ruby-operator">!</span><span class="ruby-ivar">@errors</span>.<span class="ruby-identifier">empty?</span>
|
|
16
|
-
<span class="ruby-keyword kw">end</span></pre>
|
|
17
|
-
</body>
|
|
18
|
-
</html>
|
data/doc/classes/Qbxml.html
DELETED
|
@@ -1,131 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
-
<!DOCTYPE html
|
|
3
|
-
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
-
|
|
6
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
|
-
<head>
|
|
8
|
-
<title>Module: Qbxml</title>
|
|
9
|
-
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
-
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
-
<link rel="stylesheet" href=".././rdoc-style.css" type="text/css" media="screen" />
|
|
12
|
-
<script type="text/javascript">
|
|
13
|
-
// <![CDATA[
|
|
14
|
-
|
|
15
|
-
function popupCode( url ) {
|
|
16
|
-
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function toggleCode( id ) {
|
|
20
|
-
if ( document.getElementById )
|
|
21
|
-
elem = document.getElementById( id );
|
|
22
|
-
else if ( document.all )
|
|
23
|
-
elem = eval( "document.all." + id );
|
|
24
|
-
else
|
|
25
|
-
return false;
|
|
26
|
-
|
|
27
|
-
elemStyle = elem.style;
|
|
28
|
-
|
|
29
|
-
if ( elemStyle.display != "block" ) {
|
|
30
|
-
elemStyle.display = "block"
|
|
31
|
-
} else {
|
|
32
|
-
elemStyle.display = "none"
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Make codeblocks hidden by default
|
|
39
|
-
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
|
|
40
|
-
|
|
41
|
-
// ]]>
|
|
42
|
-
</script>
|
|
43
|
-
|
|
44
|
-
</head>
|
|
45
|
-
<body>
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
<div id="classHeader">
|
|
50
|
-
<table class="header-table">
|
|
51
|
-
<tr class="top-aligned-row">
|
|
52
|
-
<td><strong>Module</strong></td>
|
|
53
|
-
<td class="class-name-in-header">Qbxml</td>
|
|
54
|
-
</tr>
|
|
55
|
-
<tr class="top-aligned-row">
|
|
56
|
-
<td><strong>In:</strong></td>
|
|
57
|
-
<td>
|
|
58
|
-
<a href="../files/lib/qbxml/request_rb.html">
|
|
59
|
-
lib/qbxml/request.rb
|
|
60
|
-
</a>
|
|
61
|
-
<br />
|
|
62
|
-
<a href="../files/lib/qbxml/response_rb.html">
|
|
63
|
-
lib/qbxml/response.rb
|
|
64
|
-
</a>
|
|
65
|
-
<br />
|
|
66
|
-
</td>
|
|
67
|
-
</tr>
|
|
68
|
-
|
|
69
|
-
</table>
|
|
70
|
-
</div>
|
|
71
|
-
<!-- banner header -->
|
|
72
|
-
|
|
73
|
-
<div id="bodyContent">
|
|
74
|
-
|
|
75
|
-
|
|
76
|
-
|
|
77
|
-
<div id="contextContent">
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
</div>
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
</div>
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
<!-- if includes -->
|
|
88
|
-
|
|
89
|
-
<div id="section">
|
|
90
|
-
|
|
91
|
-
<div id="class-list">
|
|
92
|
-
<h3 class="section-bar">Classes and Modules</h3>
|
|
93
|
-
|
|
94
|
-
Class <a href="Qbxml/Request.html" class="link">Qbxml::Request</a><br />
|
|
95
|
-
Class <a href="Qbxml/RequestSet.html" class="link">Qbxml::RequestSet</a><br />
|
|
96
|
-
Class <a href="Qbxml/Response.html" class="link">Qbxml::Response</a><br />
|
|
97
|
-
Class <a href="Qbxml/ResponseSet.html" class="link">Qbxml::ResponseSet</a><br />
|
|
98
|
-
|
|
99
|
-
</div>
|
|
100
|
-
|
|
101
|
-
<div id="constants-list">
|
|
102
|
-
<h3 class="section-bar">Constants</h3>
|
|
103
|
-
|
|
104
|
-
<div class="name-list">
|
|
105
|
-
<table summary="Constants">
|
|
106
|
-
<tr class="top-aligned-row context-row">
|
|
107
|
-
<td class="context-item-name">VERSION</td>
|
|
108
|
-
<td>=</td>
|
|
109
|
-
<td class="context-item-value">'6.0'</td>
|
|
110
|
-
</tr>
|
|
111
|
-
</table>
|
|
112
|
-
</div>
|
|
113
|
-
</div>
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
<!-- if method_list -->
|
|
121
|
-
|
|
122
|
-
|
|
123
|
-
</div>
|
|
124
|
-
|
|
125
|
-
|
|
126
|
-
<div id="validator-badges">
|
|
127
|
-
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
128
|
-
</div>
|
|
129
|
-
|
|
130
|
-
</body>
|
|
131
|
-
</html>
|
|
@@ -1,224 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
-
<!DOCTYPE html
|
|
3
|
-
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
-
|
|
6
|
-
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
|
7
|
-
<head>
|
|
8
|
-
<title>Class: Qbxml::Request</title>
|
|
9
|
-
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
-
<meta http-equiv="Content-Script-Type" content="text/javascript" />
|
|
11
|
-
<link rel="stylesheet" href="../.././rdoc-style.css" type="text/css" media="screen" />
|
|
12
|
-
<script type="text/javascript">
|
|
13
|
-
// <![CDATA[
|
|
14
|
-
|
|
15
|
-
function popupCode( url ) {
|
|
16
|
-
window.open(url, "Code", "resizable=yes,scrollbars=yes,toolbar=no,status=no,height=150,width=400")
|
|
17
|
-
}
|
|
18
|
-
|
|
19
|
-
function toggleCode( id ) {
|
|
20
|
-
if ( document.getElementById )
|
|
21
|
-
elem = document.getElementById( id );
|
|
22
|
-
else if ( document.all )
|
|
23
|
-
elem = eval( "document.all." + id );
|
|
24
|
-
else
|
|
25
|
-
return false;
|
|
26
|
-
|
|
27
|
-
elemStyle = elem.style;
|
|
28
|
-
|
|
29
|
-
if ( elemStyle.display != "block" ) {
|
|
30
|
-
elemStyle.display = "block"
|
|
31
|
-
} else {
|
|
32
|
-
elemStyle.display = "none"
|
|
33
|
-
}
|
|
34
|
-
|
|
35
|
-
return true;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
// Make codeblocks hidden by default
|
|
39
|
-
document.writeln( "<style type=\"text/css\">div.method-source-code { display: none }</style>" )
|
|
40
|
-
|
|
41
|
-
// ]]>
|
|
42
|
-
</script>
|
|
43
|
-
|
|
44
|
-
</head>
|
|
45
|
-
<body>
|
|
46
|
-
|
|
47
|
-
|
|
48
|
-
|
|
49
|
-
<div id="classHeader">
|
|
50
|
-
<table class="header-table">
|
|
51
|
-
<tr class="top-aligned-row">
|
|
52
|
-
<td><strong>Class</strong></td>
|
|
53
|
-
<td class="class-name-in-header">Qbxml::Request</td>
|
|
54
|
-
</tr>
|
|
55
|
-
<tr class="top-aligned-row">
|
|
56
|
-
<td><strong>In:</strong></td>
|
|
57
|
-
<td>
|
|
58
|
-
<a href="../../files/lib/qbxml/request_rb.html">
|
|
59
|
-
lib/qbxml/request.rb
|
|
60
|
-
</a>
|
|
61
|
-
<br />
|
|
62
|
-
</td>
|
|
63
|
-
</tr>
|
|
64
|
-
|
|
65
|
-
<tr class="top-aligned-row">
|
|
66
|
-
<td><strong>Parent:</strong></td>
|
|
67
|
-
<td>
|
|
68
|
-
<a href="../Object.html">
|
|
69
|
-
Object
|
|
70
|
-
</a>
|
|
71
|
-
</td>
|
|
72
|
-
</tr>
|
|
73
|
-
</table>
|
|
74
|
-
</div>
|
|
75
|
-
<!-- banner header -->
|
|
76
|
-
|
|
77
|
-
<div id="bodyContent">
|
|
78
|
-
|
|
79
|
-
|
|
80
|
-
|
|
81
|
-
<div id="contextContent">
|
|
82
|
-
|
|
83
|
-
|
|
84
|
-
|
|
85
|
-
</div>
|
|
86
|
-
|
|
87
|
-
<div id="method-list">
|
|
88
|
-
<h3 class="section-bar">Methods</h3>
|
|
89
|
-
|
|
90
|
-
<div class="name-list">
|
|
91
|
-
<a href="#M000132">new</a>
|
|
92
|
-
<a href="#M000133">next_request_id</a>
|
|
93
|
-
<a href="#M000134">to_xml</a>
|
|
94
|
-
</div>
|
|
95
|
-
</div>
|
|
96
|
-
|
|
97
|
-
</div>
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
<!-- if includes -->
|
|
101
|
-
|
|
102
|
-
<div id="section">
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
<!-- if method_list -->
|
|
112
|
-
<div id="methods">
|
|
113
|
-
<h3 class="section-bar">Public Class methods</h3>
|
|
114
|
-
|
|
115
|
-
<div id="method-M000132" class="method-detail">
|
|
116
|
-
<a name="M000132"></a>
|
|
117
|
-
|
|
118
|
-
<div class="method-heading">
|
|
119
|
-
<a href="Request.src/M000132.html" target="Code" class="method-signature"
|
|
120
|
-
onclick="popupCode('Request.src/M000132.html');return false;">
|
|
121
|
-
<span class="method-name">new</span><span class="method-args">(object, type, options_or_regexp={})</span>
|
|
122
|
-
</a>
|
|
123
|
-
</div>
|
|
124
|
-
|
|
125
|
-
<div class="method-description">
|
|
126
|
-
<ol>
|
|
127
|
-
<li>List queries (:query)
|
|
128
|
-
|
|
129
|
-
</li>
|
|
130
|
-
</ol>
|
|
131
|
-
<pre>
|
|
132
|
-
Request.new(object, :query) # <= will return the record matching the object supplied (automatically searches by list_id or txn_id)
|
|
133
|
-
Request.new(Customer, :query, :limit => 1) # <= will return the first customer
|
|
134
|
-
Request.new(Customer, :query, /some match/) # <= will return all customers matching the regexp
|
|
135
|
-
</pre>
|
|
136
|
-
<ol>
|
|
137
|
-
<li>Deleted queries (:deleted)
|
|
138
|
-
|
|
139
|
-
</li>
|
|
140
|
-
</ol>
|
|
141
|
-
<pre>
|
|
142
|
-
Request.new(object, :deleted) # <= INVALID!! (besides, you wouldn't have an object to check up on anyway :P )
|
|
143
|
-
Request.new(Customer, :deleted) # <= will return all deleted Customers
|
|
144
|
-
Request.new(Customer, :deleted, :deleted_date_range_filter => {'from_deleted_date' => Date.parse('2008/10/05')}) # <= will return all Customers deleted since 5 October 2008
|
|
145
|
-
</pre>
|
|
146
|
-
<ol>
|
|
147
|
-
<li><a href="../Object.html">Object</a>-specific transaction query
|
|
148
|
-
(:transaction)
|
|
149
|
-
|
|
150
|
-
</li>
|
|
151
|
-
</ol>
|
|
152
|
-
<pre>
|
|
153
|
-
Request.new(Transaction, :query) # <= will return the transaction matching the object supplied
|
|
154
|
-
</pre>
|
|
155
|
-
<ol>
|
|
156
|
-
<li>Mod requests (:mod)
|
|
157
|
-
|
|
158
|
-
</li>
|
|
159
|
-
</ol>
|
|
160
|
-
<pre>
|
|
161
|
-
Request.new(object, :mod) # <= will update the object
|
|
162
|
-
</pre>
|
|
163
|
-
<ol>
|
|
164
|
-
<li>Delete requests (:delete)
|
|
165
|
-
|
|
166
|
-
</li>
|
|
167
|
-
</ol>
|
|
168
|
-
<pre>
|
|
169
|
-
Request.new(object, :delete) # <= will delete the object
|
|
170
|
-
</pre>
|
|
171
|
-
<p>
|
|
172
|
-
We want the attributes of the object when we are updating, but no other
|
|
173
|
-
time.
|
|
174
|
-
</p>
|
|
175
|
-
</div>
|
|
176
|
-
</div>
|
|
177
|
-
|
|
178
|
-
<div id="method-M000133" class="method-detail">
|
|
179
|
-
<a name="M000133"></a>
|
|
180
|
-
|
|
181
|
-
<div class="method-heading">
|
|
182
|
-
<a href="Request.src/M000133.html" target="Code" class="method-signature"
|
|
183
|
-
onclick="popupCode('Request.src/M000133.html');return false;">
|
|
184
|
-
<span class="method-name">next_request_id</span><span class="method-args">()</span>
|
|
185
|
-
</a>
|
|
186
|
-
</div>
|
|
187
|
-
|
|
188
|
-
<div class="method-description">
|
|
189
|
-
</div>
|
|
190
|
-
</div>
|
|
191
|
-
|
|
192
|
-
<h3 class="section-bar">Public Instance methods</h3>
|
|
193
|
-
|
|
194
|
-
<div id="method-M000134" class="method-detail">
|
|
195
|
-
<a name="M000134"></a>
|
|
196
|
-
|
|
197
|
-
<div class="method-heading">
|
|
198
|
-
<a href="Request.src/M000134.html" target="Code" class="method-signature"
|
|
199
|
-
onclick="popupCode('Request.src/M000134.html');return false;">
|
|
200
|
-
<span class="method-name">to_xml</span><span class="method-args">(as_set=true)</span>
|
|
201
|
-
</a>
|
|
202
|
-
</div>
|
|
203
|
-
|
|
204
|
-
<div class="method-description">
|
|
205
|
-
<p>
|
|
206
|
-
This is where the magic happens to convert a request object into xml worthy
|
|
207
|
-
of quickbooks.
|
|
208
|
-
</p>
|
|
209
|
-
</div>
|
|
210
|
-
</div>
|
|
211
|
-
|
|
212
|
-
|
|
213
|
-
</div>
|
|
214
|
-
|
|
215
|
-
|
|
216
|
-
</div>
|
|
217
|
-
|
|
218
|
-
|
|
219
|
-
<div id="validator-badges">
|
|
220
|
-
<p><small><a href="http://validator.w3.org/check/referer">[Validate]</a></small></p>
|
|
221
|
-
</div>
|
|
222
|
-
|
|
223
|
-
</body>
|
|
224
|
-
</html>
|
|
@@ -1,66 +0,0 @@
|
|
|
1
|
-
<?xml version="1.0" encoding="iso-8859-1"?>
|
|
2
|
-
<!DOCTYPE html
|
|
3
|
-
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
|
4
|
-
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
|
5
|
-
|
|
6
|
-
<html>
|
|
7
|
-
<head>
|
|
8
|
-
<title>new (Qbxml::Request)</title>
|
|
9
|
-
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1" />
|
|
10
|
-
<link rel="stylesheet" href="../../.././rdoc-style.css" type="text/css" media="screen" />
|
|
11
|
-
</head>
|
|
12
|
-
<body class="standalone-code">
|
|
13
|
-
<pre><span class="ruby-comment cmt"># File lib/qbxml/request.rb, line 72</span>
|
|
14
|
-
<span class="ruby-keyword kw">def</span> <span class="ruby-identifier">initialize</span>(<span class="ruby-identifier">object</span>, <span class="ruby-identifier">type</span>, <span class="ruby-identifier">options_or_regexp</span>={})
|
|
15
|
-
<span class="ruby-identifier">options</span> = <span class="ruby-identifier">options_or_regexp</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Regexp</span>) <span class="ruby-operator">?</span> {<span class="ruby-identifier">:matches</span> =<span class="ruby-operator">></span> <span class="ruby-identifier">options_or_regexp</span>} <span class="ruby-operator">:</span> <span class="ruby-identifier">options_or_regexp</span>
|
|
16
|
-
<span class="ruby-ivar">@type</span> = <span class="ruby-identifier">type</span>
|
|
17
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">"Qbxml::Requests can only be of one of the following types: :query, :transaction, :any_transaction, :mod, :add, :delete, :deleted, or :report"</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@type</span>.<span class="ruby-identifier">is_one_of?</span>(<span class="ruby-identifier">:query</span>, <span class="ruby-identifier">:transaction</span>, <span class="ruby-identifier">:any_transaction</span>, <span class="ruby-identifier">:mod</span>, <span class="ruby-identifier">:report</span>, <span class="ruby-identifier">:add</span>, <span class="ruby-identifier">:delete</span>, <span class="ruby-identifier">:deleted</span>)
|
|
18
|
-
<span class="ruby-ivar">@klass</span> = <span class="ruby-identifier">object</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Class</span>) <span class="ruby-operator">?</span> <span class="ruby-identifier">object</span> <span class="ruby-operator">:</span> <span class="ruby-identifier">object</span>.<span class="ruby-identifier">class</span>
|
|
19
|
-
<span class="ruby-ivar">@object</span> = <span class="ruby-identifier">object</span>
|
|
20
|
-
<span class="ruby-ivar">@options</span> = <span class="ruby-identifier">options</span>
|
|
21
|
-
|
|
22
|
-
<span class="ruby-comment cmt"># Transform the options received for :deleted requests.</span>
|
|
23
|
-
<span class="ruby-comment cmt"># This way, Request.new(Customer, :deleted) == Request.new(ListDeleted, :list_del_type => 'Customer')</span>
|
|
24
|
-
<span class="ruby-comment cmt"># and Request.new(Transaction, :deleted) == Request.new(TxnDeleted, :txn_del_type => 'Transaction')</span>
|
|
25
|
-
<span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@type</span> <span class="ruby-operator">==</span> <span class="ruby-identifier">:deleted</span>
|
|
26
|
-
<span class="ruby-keyword kw">case</span> <span class="ruby-ivar">@klass</span>.<span class="ruby-constant">ListOrTxn</span>
|
|
27
|
-
<span class="ruby-keyword kw">when</span> <span class="ruby-value str">'List'</span>
|
|
28
|
-
<span class="ruby-ivar">@options</span>[<span class="ruby-identifier">:list_del_type</span>] = <span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">lone_name</span>
|
|
29
|
-
<span class="ruby-ivar">@klass</span> = <span class="ruby-constant">Quickbooks</span><span class="ruby-operator">::</span><span class="ruby-constant">ListDeleted</span>
|
|
30
|
-
<span class="ruby-keyword kw">when</span> <span class="ruby-value str">'Txn'</span>
|
|
31
|
-
<span class="ruby-ivar">@options</span>[<span class="ruby-identifier">:txn_del_type</span>] = <span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">lone_name</span>
|
|
32
|
-
<span class="ruby-ivar">@klass</span> = <span class="ruby-constant">Quickbooks</span><span class="ruby-operator">::</span><span class="ruby-constant">TxnDeleted</span>
|
|
33
|
-
<span class="ruby-keyword kw">end</span>
|
|
34
|
-
<span class="ruby-keyword kw">end</span>
|
|
35
|
-
|
|
36
|
-
<span class="ruby-comment cmt"># Return only specific properties: Request.new(Customer, :query, :only => [:list_id, :full_name]); Quickbooks::Customer.first(:only => :list_id)</span>
|
|
37
|
-
<span class="ruby-ivar">@ret_elements</span> = <span class="ruby-ivar">@options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">:only</span>).<span class="ruby-identifier">to_a</span>.<span class="ruby-identifier">only</span>(<span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">properties</span>).<span class="ruby-identifier">ordered</span>(<span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">properties</span>).<span class="ruby-identifier">stringify_values</span>.<span class="ruby-identifier">camelize_values!</span>(<span class="ruby-constant">Quickbooks</span><span class="ruby-operator">::</span><span class="ruby-constant">CAMELIZE_EXCEPTIONS</span>) <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@options</span>.<span class="ruby-identifier">has_key?</span>(<span class="ruby-identifier">:only</span>)
|
|
38
|
-
|
|
39
|
-
<span class="ruby-comment cmt"># Includes only valid filters + aliases for valid filters, # => {underscore/slashed keys + aliases}</span>
|
|
40
|
-
<span class="ruby-comment cmt"># then transforms aliased filters to real filters, # => {underscore/slashed keys}</span>
|
|
41
|
-
<span class="ruby-comment cmt"># then camelizes keys to prepare for writing to XML, # => {}</span>
|
|
42
|
-
<span class="ruby-comment cmt"># lastly orders the keys to a valid filter order.</span>
|
|
43
|
-
|
|
44
|
-
<span class="ruby-comment cmt"># Study the following:</span>
|
|
45
|
-
<span class="ruby-comment cmt"># @klass.filter_aliases = {'deleted_after' => 'deleted_date_range_filter/from_deleted_date'}</span>
|
|
46
|
-
<span class="ruby-comment cmt"># @klass.valid_filters = ['deleted_date_range_filter/from_deleted_date']</span>
|
|
47
|
-
<span class="ruby-comment cmt"># {:deleted_after => "2008-03-20T11:20:26-04:00"}.slashed.</span>
|
|
48
|
-
<span class="ruby-comment cmt"># only(@klass.valid_filters + @klass.filter_aliases.slashed.flat.keys).</span>
|
|
49
|
-
<span class="ruby-comment cmt"># transform_keys!(@klass.filter_aliases.slashed.flat).</span>
|
|
50
|
-
<span class="ruby-comment cmt"># slash_camelize_keys!(Quickbooks::CAMELIZE_EXCEPTIONS).slashed.</span>
|
|
51
|
-
<span class="ruby-comment cmt"># ordered!(@klass.camelized_valid_filters).slashed.expand</span>
|
|
52
|
-
<span class="ruby-comment cmt"># # => {"DeletedDateRangeFilter" => {"FromDeletedDate" => "2008-03-20T11:20:26-04:00"}}</span>
|
|
53
|
-
<span class="ruby-ivar">@filters</span> = <span class="ruby-ivar">@options</span>.<span class="ruby-identifier">delete</span>(<span class="ruby-identifier">:filters</span>) <span class="ruby-operator">||</span> <span class="ruby-ivar">@options</span>.<span class="ruby-identifier">slashed</span>.
|
|
54
|
-
<span class="ruby-identifier">only</span>(<span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">valid_filters</span> <span class="ruby-operator">+</span> <span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">filter_aliases</span>.<span class="ruby-identifier">slashed</span>.<span class="ruby-identifier">flat</span>.<span class="ruby-identifier">keys</span>).
|
|
55
|
-
<span class="ruby-identifier">transform_keys!</span>(<span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">filter_aliases</span>.<span class="ruby-identifier">slashed</span>.<span class="ruby-identifier">flat</span>).
|
|
56
|
-
<span class="ruby-identifier">slash_camelize_keys!</span>(<span class="ruby-constant">Quickbooks</span><span class="ruby-operator">::</span><span class="ruby-constant">CAMELIZE_EXCEPTIONS</span>).
|
|
57
|
-
<span class="ruby-identifier">ordered!</span>(<span class="ruby-ivar">@klass</span>.<span class="ruby-identifier">camelized_valid_filters</span>)
|
|
58
|
-
<span class="ruby-ivar">@filters</span> = <span class="ruby-ivar">@filters</span>.<span class="ruby-identifier">to_hash</span> <span class="ruby-keyword kw">unless</span> <span class="ruby-ivar">@filters</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Hash</span>)
|
|
59
|
-
<span class="ruby-ivar">@filters</span> = <span class="ruby-ivar">@filters</span>[<span class="ruby-value str">'FILTERS'</span>] <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@filters</span>.<span class="ruby-identifier">keys</span> <span class="ruby-operator">==</span> [<span class="ruby-value str">'FILTERS'</span>] <span class="ruby-comment cmt"># So if you include an xml-formatted string of filters, you can simply wrap them in <FILTERS></FILTERS> as a root key</span>
|
|
60
|
-
|
|
61
|
-
<span class="ruby-comment cmt"># Complain if:</span>
|
|
62
|
-
<span class="ruby-comment cmt"># 1) type is :mod or :delete, and object supplied is not a valid model</span>
|
|
63
|
-
<span class="ruby-identifier">raise</span> <span class="ruby-constant">ArgumentError</span>, <span class="ruby-value str">"A Quickbooks record object must be supplied to perform an add, mod or del action"</span> <span class="ruby-keyword kw">if</span> <span class="ruby-ivar">@type</span>.<span class="ruby-identifier">is_one_of?</span>(<span class="ruby-identifier">:add</span>, <span class="ruby-identifier">:mod</span>, <span class="ruby-identifier">:delete</span>) <span class="ruby-operator">&&</span> <span class="ruby-operator">!</span><span class="ruby-ivar">@object</span>.<span class="ruby-identifier">is_a?</span>(<span class="ruby-constant">Quickbooks</span><span class="ruby-operator">::</span><span class="ruby-constant">Base</span>)
|
|
64
|
-
<span class="ruby-keyword kw">end</span></pre>
|
|
65
|
-
</body>
|
|
66
|
-
</html>
|