cfdi 0.0.9 → 0.1.0
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.
- checksums.yaml +4 -4
- data/.gitignore +1 -0
- data/cfdi.gemspec +1 -0
- data/doc/CFDI/Certificado.html +533 -0
- data/doc/CFDI/Complemento.html +150 -0
- data/doc/CFDI/Comprobante.html +1758 -0
- data/doc/CFDI/Concepto.html +461 -0
- data/doc/CFDI/Domicilio.html +1040 -0
- data/doc/CFDI/ElementoComprobante.html +547 -0
- data/doc/CFDI/Entidad.html +600 -0
- data/doc/CFDI/Key.html +373 -0
- data/doc/CFDI.html +511 -0
- data/doc/Float.html +231 -0
- data/doc/_index.html +194 -0
- data/doc/class_list.html +54 -0
- data/doc/css/common.css +1 -0
- data/doc/css/full_list.css +57 -0
- data/doc/css/style.css +338 -0
- data/doc/file_list.html +53 -0
- data/doc/frames.html +26 -0
- data/doc/index.html +194 -0
- data/doc/js/app.js +214 -0
- data/doc/js/full_list.js +178 -0
- data/doc/js/jquery.js +4 -0
- data/doc/method_list.html +305 -0
- data/doc/top-level-namespace.html +114 -0
- data/lib/certificado.rb +17 -2
- data/lib/cfdi.rb +5 -1
- data/lib/complemento.rb +2 -0
- data/lib/comprobante.rb +97 -6
- data/lib/comun.rb +25 -2
- data/lib/concepto.rb +25 -6
- data/lib/entidad.rb +38 -3
- data/lib/key.rb +15 -1
- data/lib/xml.rb +5 -0
- data/test/comprobante_spec.rb +57 -0
- data/test/entidar_spec.rb +20 -0
- metadata +45 -3
@@ -0,0 +1,1758 @@
|
|
1
|
+
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
|
2
|
+
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
|
3
|
+
<html xmlns="http://www.w3.org/1999/xhtml" xml:lang="en" lang="en">
|
4
|
+
<head>
|
5
|
+
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
|
6
|
+
<title>
|
7
|
+
Class: CFDI::Comprobante
|
8
|
+
|
9
|
+
— Documentation by YARD 0.8.7.2
|
10
|
+
|
11
|
+
</title>
|
12
|
+
|
13
|
+
<link rel="stylesheet" href="../css/style.css" type="text/css" charset="utf-8" />
|
14
|
+
|
15
|
+
<link rel="stylesheet" href="../css/common.css" type="text/css" charset="utf-8" />
|
16
|
+
|
17
|
+
<script type="text/javascript" charset="utf-8">
|
18
|
+
hasFrames = window.top.frames.main ? true : false;
|
19
|
+
relpath = '../';
|
20
|
+
framesUrl = "../frames.html#!" + escape(window.location.href);
|
21
|
+
</script>
|
22
|
+
|
23
|
+
|
24
|
+
<script type="text/javascript" charset="utf-8" src="../js/jquery.js"></script>
|
25
|
+
|
26
|
+
<script type="text/javascript" charset="utf-8" src="../js/app.js"></script>
|
27
|
+
|
28
|
+
|
29
|
+
</head>
|
30
|
+
<body>
|
31
|
+
<div id="header">
|
32
|
+
<div id="menu">
|
33
|
+
|
34
|
+
<a href="../_index.html">Index (C)</a> »
|
35
|
+
<span class='title'><span class='object_link'><a href="../CFDI.html" title="CFDI (module)">CFDI</a></span></span>
|
36
|
+
»
|
37
|
+
<span class="title">Comprobante</span>
|
38
|
+
|
39
|
+
|
40
|
+
<div class="noframes"><span class="title">(</span><a href="." target="_top">no frames</a><span class="title">)</span></div>
|
41
|
+
</div>
|
42
|
+
|
43
|
+
<div id="search">
|
44
|
+
|
45
|
+
<a class="full_list_link" id="class_list_link"
|
46
|
+
href="../class_list.html">
|
47
|
+
Class List
|
48
|
+
</a>
|
49
|
+
|
50
|
+
<a class="full_list_link" id="method_list_link"
|
51
|
+
href="../method_list.html">
|
52
|
+
Method List
|
53
|
+
</a>
|
54
|
+
|
55
|
+
<a class="full_list_link" id="file_list_link"
|
56
|
+
href="../file_list.html">
|
57
|
+
File List
|
58
|
+
</a>
|
59
|
+
|
60
|
+
</div>
|
61
|
+
<div class="clear"></div>
|
62
|
+
</div>
|
63
|
+
|
64
|
+
<iframe id="search_frame"></iframe>
|
65
|
+
|
66
|
+
<div id="content"><h1>Class: CFDI::Comprobante
|
67
|
+
|
68
|
+
|
69
|
+
|
70
|
+
</h1>
|
71
|
+
|
72
|
+
<dl class="box">
|
73
|
+
|
74
|
+
<dt class="r1">Inherits:</dt>
|
75
|
+
<dd class="r1">
|
76
|
+
<span class="inheritName">Object</span>
|
77
|
+
|
78
|
+
<ul class="fullTree">
|
79
|
+
<li>Object</li>
|
80
|
+
|
81
|
+
<li class="next">CFDI::Comprobante</li>
|
82
|
+
|
83
|
+
</ul>
|
84
|
+
<a href="#" class="inheritanceTree">show all</a>
|
85
|
+
|
86
|
+
</dd>
|
87
|
+
|
88
|
+
|
89
|
+
|
90
|
+
|
91
|
+
|
92
|
+
|
93
|
+
|
94
|
+
|
95
|
+
|
96
|
+
<dt class="r2 last">Defined in:</dt>
|
97
|
+
<dd class="r2 last">lib/comprobante.rb</dd>
|
98
|
+
|
99
|
+
</dl>
|
100
|
+
<div class="clear"></div>
|
101
|
+
|
102
|
+
<h2>Overview</h2><div class="docstring">
|
103
|
+
<div class="discussion">
|
104
|
+
|
105
|
+
<p>La clase principal para crear Comprobantes</p>
|
106
|
+
|
107
|
+
|
108
|
+
</div>
|
109
|
+
</div>
|
110
|
+
<div class="tags">
|
111
|
+
|
112
|
+
|
113
|
+
</div>
|
114
|
+
<h2>Constant Summary</h2>
|
115
|
+
|
116
|
+
<dl class="constants">
|
117
|
+
|
118
|
+
<dt id="options-classvariable" class="">@@options =
|
119
|
+
|
120
|
+
</dt>
|
121
|
+
<dd><pre class="code"><span class='lbrace'>{</span>
|
122
|
+
<span class='label'>tasa:</span> <span class='float'>0.16</span><span class='comma'>,</span>
|
123
|
+
<span class='label'>defaults:</span> <span class='lbrace'>{</span>
|
124
|
+
<span class='label'>moneda:</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>pesos</span><span class='tstring_end'>'</span></span><span class='comma'>,</span>
|
125
|
+
<span class='label'>version:</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>3.2</span><span class='tstring_end'>'</span></span><span class='comma'>,</span>
|
126
|
+
<span class='label'>subTotal:</span> <span class='float'>0.0</span><span class='comma'>,</span>
|
127
|
+
<span class='label'>TipoCambio:</span> <span class='int'>1</span><span class='comma'>,</span>
|
128
|
+
<span class='label'>conceptos:</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
129
|
+
<span class='label'>impuestos:</span> <span class='lbracket'>[</span><span class='rbracket'>]</span><span class='comma'>,</span>
|
130
|
+
<span class='label'>tipoDeComprobante:</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>ingreso</span><span class='tstring_end'>'</span></span>
|
131
|
+
<span class='rbrace'>}</span>
|
132
|
+
<span class='rbrace'>}</span></pre></dd>
|
133
|
+
|
134
|
+
</dl>
|
135
|
+
|
136
|
+
|
137
|
+
|
138
|
+
|
139
|
+
|
140
|
+
|
141
|
+
|
142
|
+
|
143
|
+
|
144
|
+
<h2>
|
145
|
+
Class Method Summary
|
146
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
147
|
+
</h2>
|
148
|
+
|
149
|
+
<ul class="summary">
|
150
|
+
|
151
|
+
<li class="public ">
|
152
|
+
<span class="summary_signature">
|
153
|
+
|
154
|
+
<a href="#configure-class_method" title="configure (class method)">+ (Hash) <strong>configure</strong>(options) </a>
|
155
|
+
|
156
|
+
|
157
|
+
|
158
|
+
</span>
|
159
|
+
|
160
|
+
|
161
|
+
|
162
|
+
|
163
|
+
|
164
|
+
|
165
|
+
|
166
|
+
|
167
|
+
|
168
|
+
<span class="summary_desc"><div class='inline'>
|
169
|
+
<p>Configurar las opciones default de los comprobantes.</p>
|
170
|
+
</div></span>
|
171
|
+
|
172
|
+
</li>
|
173
|
+
|
174
|
+
|
175
|
+
</ul>
|
176
|
+
|
177
|
+
<h2>
|
178
|
+
Instance Method Summary
|
179
|
+
<small>(<a href="#" class="summary_toggle">collapse</a>)</small>
|
180
|
+
</h2>
|
181
|
+
|
182
|
+
<ul class="summary">
|
183
|
+
|
184
|
+
<li class="public ">
|
185
|
+
<span class="summary_signature">
|
186
|
+
|
187
|
+
<a href="#cadena_original-instance_method" title="#cadena_original (instance method)">- (String) <strong>cadena_original</strong> </a>
|
188
|
+
|
189
|
+
|
190
|
+
|
191
|
+
</span>
|
192
|
+
|
193
|
+
|
194
|
+
|
195
|
+
|
196
|
+
|
197
|
+
|
198
|
+
|
199
|
+
|
200
|
+
|
201
|
+
<span class="summary_desc"><div class='inline'>
|
202
|
+
<p>La cadena original del CFDI.</p>
|
203
|
+
</div></span>
|
204
|
+
|
205
|
+
</li>
|
206
|
+
|
207
|
+
|
208
|
+
<li class="public ">
|
209
|
+
<span class="summary_signature">
|
210
|
+
|
211
|
+
<a href="#complemento%3D-instance_method" title="#complemento= (instance method)">- (CFDI::Complemento) <strong>complemento=</strong>(complemento) </a>
|
212
|
+
|
213
|
+
|
214
|
+
|
215
|
+
</span>
|
216
|
+
|
217
|
+
|
218
|
+
|
219
|
+
|
220
|
+
|
221
|
+
|
222
|
+
|
223
|
+
|
224
|
+
|
225
|
+
<span class="summary_desc"><div class='inline'>
|
226
|
+
<p>Asigna un complemento al comprobante.</p>
|
227
|
+
</div></span>
|
228
|
+
|
229
|
+
</li>
|
230
|
+
|
231
|
+
|
232
|
+
<li class="public ">
|
233
|
+
<span class="summary_signature">
|
234
|
+
|
235
|
+
<a href="#conceptos%3D-instance_method" title="#conceptos= (instance method)">- (Array) <strong>conceptos=</strong>(conceptos) </a>
|
236
|
+
|
237
|
+
|
238
|
+
|
239
|
+
</span>
|
240
|
+
|
241
|
+
|
242
|
+
|
243
|
+
|
244
|
+
|
245
|
+
|
246
|
+
|
247
|
+
|
248
|
+
|
249
|
+
<span class="summary_desc"><div class='inline'>
|
250
|
+
<p>Agrega uno o varios conceptos En caso de darle un Hash o un
|
251
|
+
<span class='object_link'><a href="Concepto.html" title="CFDI::Concepto (class)">Concepto</a></span>, agrega este a los conceptos, de otro modo, sobreescribe
|
252
|
+
los conceptos pre-existentes.</p>
|
253
|
+
</div></span>
|
254
|
+
|
255
|
+
</li>
|
256
|
+
|
257
|
+
|
258
|
+
<li class="public ">
|
259
|
+
<span class="summary_signature">
|
260
|
+
|
261
|
+
<a href="#emisor%3D-instance_method" title="#emisor= (instance method)">- (CFDI::Entidad) <strong>emisor=</strong>(emisor) </a>
|
262
|
+
|
263
|
+
|
264
|
+
|
265
|
+
</span>
|
266
|
+
|
267
|
+
|
268
|
+
|
269
|
+
|
270
|
+
|
271
|
+
|
272
|
+
|
273
|
+
|
274
|
+
|
275
|
+
<span class="summary_desc"><div class='inline'>
|
276
|
+
<p>Asigna un emisor de tipo <span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">Entidad</a></span>.</p>
|
277
|
+
</div></span>
|
278
|
+
|
279
|
+
</li>
|
280
|
+
|
281
|
+
|
282
|
+
<li class="public ">
|
283
|
+
<span class="summary_signature">
|
284
|
+
|
285
|
+
<a href="#fecha%3D-instance_method" title="#fecha= (instance method)">- (String) <strong>fecha=</strong>(fecha) </a>
|
286
|
+
|
287
|
+
|
288
|
+
|
289
|
+
</span>
|
290
|
+
|
291
|
+
|
292
|
+
|
293
|
+
|
294
|
+
|
295
|
+
|
296
|
+
|
297
|
+
|
298
|
+
|
299
|
+
<span class="summary_desc"><div class='inline'>
|
300
|
+
<p>Asigna una fecha al comprobante.</p>
|
301
|
+
</div></span>
|
302
|
+
|
303
|
+
</li>
|
304
|
+
|
305
|
+
|
306
|
+
<li class="public ">
|
307
|
+
<span class="summary_signature">
|
308
|
+
|
309
|
+
<a href="#initialize-instance_method" title="#initialize (instance method)">- (CFDI::Comprobante) <strong>initialize</strong>(data = {}, options = {}) </a>
|
310
|
+
|
311
|
+
|
312
|
+
|
313
|
+
</span>
|
314
|
+
|
315
|
+
|
316
|
+
<span class="note title constructor">constructor</span>
|
317
|
+
|
318
|
+
|
319
|
+
|
320
|
+
|
321
|
+
|
322
|
+
|
323
|
+
|
324
|
+
|
325
|
+
<span class="summary_desc"><div class='inline'>
|
326
|
+
<p>Crear un comprobante nuevo.</p>
|
327
|
+
</div></span>
|
328
|
+
|
329
|
+
</li>
|
330
|
+
|
331
|
+
|
332
|
+
<li class="public ">
|
333
|
+
<span class="summary_signature">
|
334
|
+
|
335
|
+
<a href="#receptor%3D-instance_method" title="#receptor= (instance method)">- (CFDI::Entidad) <strong>receptor=</strong>(receptor) </a>
|
336
|
+
|
337
|
+
|
338
|
+
|
339
|
+
</span>
|
340
|
+
|
341
|
+
|
342
|
+
|
343
|
+
|
344
|
+
|
345
|
+
|
346
|
+
|
347
|
+
|
348
|
+
|
349
|
+
<span class="summary_desc"><div class='inline'>
|
350
|
+
<p>Asigna un receptor.</p>
|
351
|
+
</div></span>
|
352
|
+
|
353
|
+
</li>
|
354
|
+
|
355
|
+
|
356
|
+
<li class="public ">
|
357
|
+
<span class="summary_signature">
|
358
|
+
|
359
|
+
<a href="#subTotal-instance_method" title="#subTotal (instance method)">- (Float) <strong>subTotal</strong> </a>
|
360
|
+
|
361
|
+
|
362
|
+
|
363
|
+
</span>
|
364
|
+
|
365
|
+
|
366
|
+
|
367
|
+
|
368
|
+
|
369
|
+
|
370
|
+
|
371
|
+
|
372
|
+
|
373
|
+
<span class="summary_desc"><div class='inline'>
|
374
|
+
<p>Regresa el subtotal de este comprobante, tomando el importe de cada
|
375
|
+
concepto.</p>
|
376
|
+
</div></span>
|
377
|
+
|
378
|
+
</li>
|
379
|
+
|
380
|
+
|
381
|
+
<li class="public ">
|
382
|
+
<span class="summary_signature">
|
383
|
+
|
384
|
+
<a href="#to_h-instance_method" title="#to_h (instance method)">- (Hash) <strong>to_h</strong> </a>
|
385
|
+
|
386
|
+
|
387
|
+
|
388
|
+
</span>
|
389
|
+
|
390
|
+
|
391
|
+
|
392
|
+
|
393
|
+
|
394
|
+
|
395
|
+
|
396
|
+
|
397
|
+
|
398
|
+
<span class="summary_desc"><div class='inline'>
|
399
|
+
<p>Un hash con todos los datos del comprobante, listo para Hash.to_json.</p>
|
400
|
+
</div></span>
|
401
|
+
|
402
|
+
</li>
|
403
|
+
|
404
|
+
|
405
|
+
<li class="public ">
|
406
|
+
<span class="summary_signature">
|
407
|
+
|
408
|
+
<a href="#to_xml-instance_method" title="#to_xml (instance method)">- (String) <strong>to_xml</strong> </a>
|
409
|
+
|
410
|
+
|
411
|
+
|
412
|
+
</span>
|
413
|
+
|
414
|
+
|
415
|
+
|
416
|
+
|
417
|
+
|
418
|
+
|
419
|
+
|
420
|
+
|
421
|
+
|
422
|
+
<span class="summary_desc"><div class='inline'>
|
423
|
+
<p>El comprobante como XML.</p>
|
424
|
+
</div></span>
|
425
|
+
|
426
|
+
</li>
|
427
|
+
|
428
|
+
|
429
|
+
<li class="public ">
|
430
|
+
<span class="summary_signature">
|
431
|
+
|
432
|
+
<a href="#total-instance_method" title="#total (instance method)">- (Float) <strong>total</strong> </a>
|
433
|
+
|
434
|
+
|
435
|
+
|
436
|
+
</span>
|
437
|
+
|
438
|
+
|
439
|
+
|
440
|
+
|
441
|
+
|
442
|
+
|
443
|
+
|
444
|
+
|
445
|
+
|
446
|
+
<span class="summary_desc"><div class='inline'>
|
447
|
+
<p>Regresa el total.</p>
|
448
|
+
</div></span>
|
449
|
+
|
450
|
+
</li>
|
451
|
+
|
452
|
+
|
453
|
+
</ul>
|
454
|
+
|
455
|
+
|
456
|
+
<div id="constructor_details" class="method_details_list">
|
457
|
+
<h2>Constructor Details</h2>
|
458
|
+
|
459
|
+
<div class="method_details first">
|
460
|
+
<h3 class="signature first" id="initialize-instance_method">
|
461
|
+
|
462
|
+
- (<tt><span class='object_link'><a href="" title="CFDI::Comprobante (class)">CFDI::Comprobante</a></span></tt>) <strong>initialize</strong>(data = {}, options = {})
|
463
|
+
|
464
|
+
|
465
|
+
|
466
|
+
|
467
|
+
|
468
|
+
</h3><div class="docstring">
|
469
|
+
<div class="discussion">
|
470
|
+
|
471
|
+
<p>Crear un comprobante nuevo</p>
|
472
|
+
|
473
|
+
|
474
|
+
</div>
|
475
|
+
</div>
|
476
|
+
<div class="tags">
|
477
|
+
<p class="tag_title">Parameters:</p>
|
478
|
+
<ul class="param">
|
479
|
+
|
480
|
+
<li>
|
481
|
+
|
482
|
+
<span class='name'>data</span>
|
483
|
+
|
484
|
+
|
485
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
486
|
+
|
487
|
+
|
488
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
489
|
+
|
490
|
+
|
491
|
+
—
|
492
|
+
<div class='inline'>
|
493
|
+
<p>Los datos de un comprobante</p>
|
494
|
+
</div>
|
495
|
+
|
496
|
+
</li>
|
497
|
+
|
498
|
+
<li>
|
499
|
+
|
500
|
+
<span class='name'>options</span>
|
501
|
+
|
502
|
+
|
503
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
504
|
+
|
505
|
+
|
506
|
+
<em class="default">(defaults to: <tt>{}</tt>)</em>
|
507
|
+
|
508
|
+
|
509
|
+
—
|
510
|
+
<div class='inline'>
|
511
|
+
<p>Las opciones para este comprobante</p>
|
512
|
+
</div>
|
513
|
+
|
514
|
+
</li>
|
515
|
+
|
516
|
+
</ul>
|
517
|
+
|
518
|
+
|
519
|
+
|
520
|
+
|
521
|
+
<p class="tag_title">Options Hash (<tt>data</tt>):</p>
|
522
|
+
<ul class="option">
|
523
|
+
|
524
|
+
<li>
|
525
|
+
<span class="name">:version</span>
|
526
|
+
<span class="type">(<tt>String</tt>)</span>
|
527
|
+
<span class="default">
|
528
|
+
|
529
|
+
— default:
|
530
|
+
<tt>'3.2'</tt>
|
531
|
+
|
532
|
+
</span>
|
533
|
+
|
534
|
+
— <div class='inline'>
|
535
|
+
<p>La version del CFDI</p>
|
536
|
+
</div>
|
537
|
+
|
538
|
+
</li>
|
539
|
+
|
540
|
+
<li>
|
541
|
+
<span class="name">:fecha</span>
|
542
|
+
<span class="type">(<tt>String</tt>)</span>
|
543
|
+
<span class="default">
|
544
|
+
|
545
|
+
— default:
|
546
|
+
<tt>''</tt>
|
547
|
+
|
548
|
+
</span>
|
549
|
+
|
550
|
+
— <div class='inline'>
|
551
|
+
<p>La fecha del CFDI</p>
|
552
|
+
</div>
|
553
|
+
|
554
|
+
</li>
|
555
|
+
|
556
|
+
<li>
|
557
|
+
<span class="name">:tipoDeComprobante</span>
|
558
|
+
<span class="type">(<tt>String</tt>)</span>
|
559
|
+
<span class="default">
|
560
|
+
|
561
|
+
— default:
|
562
|
+
<tt>'ingreso'</tt>
|
563
|
+
|
564
|
+
</span>
|
565
|
+
|
566
|
+
— <div class='inline'>
|
567
|
+
<p>El tipo de Comprobante</p>
|
568
|
+
</div>
|
569
|
+
|
570
|
+
</li>
|
571
|
+
|
572
|
+
<li>
|
573
|
+
<span class="name">:formaDePago</span>
|
574
|
+
<span class="type">(<tt>String</tt>)</span>
|
575
|
+
<span class="default">
|
576
|
+
|
577
|
+
— default:
|
578
|
+
<tt>''</tt>
|
579
|
+
|
580
|
+
</span>
|
581
|
+
|
582
|
+
— <div class='inline'>
|
583
|
+
<p>La forma de pago (pago en una sóla exhibición?)</p>
|
584
|
+
</div>
|
585
|
+
|
586
|
+
</li>
|
587
|
+
|
588
|
+
<li>
|
589
|
+
<span class="name">:condicionesDePago</span>
|
590
|
+
<span class="type">(<tt>String</tt>)</span>
|
591
|
+
<span class="default">
|
592
|
+
|
593
|
+
— default:
|
594
|
+
<tt>''</tt>
|
595
|
+
|
596
|
+
</span>
|
597
|
+
|
598
|
+
— <div class='inline'>
|
599
|
+
<p>Las condiciones de pago (Efectos fiscales al pago?)</p>
|
600
|
+
</div>
|
601
|
+
|
602
|
+
</li>
|
603
|
+
|
604
|
+
<li>
|
605
|
+
<span class="name">:TipoCambio</span>
|
606
|
+
<span class="type">(<tt>String</tt>)</span>
|
607
|
+
<span class="default">
|
608
|
+
|
609
|
+
— default:
|
610
|
+
<tt>1</tt>
|
611
|
+
|
612
|
+
</span>
|
613
|
+
|
614
|
+
— <div class='inline'>
|
615
|
+
<p>El tipo de cambio para la moneda de este CFDI'</p>
|
616
|
+
</div>
|
617
|
+
|
618
|
+
</li>
|
619
|
+
|
620
|
+
<li>
|
621
|
+
<span class="name">:moneda</span>
|
622
|
+
<span class="type">(<tt>String</tt>)</span>
|
623
|
+
<span class="default">
|
624
|
+
|
625
|
+
— default:
|
626
|
+
<tt>'pesos'</tt>
|
627
|
+
|
628
|
+
</span>
|
629
|
+
|
630
|
+
— <div class='inline'>
|
631
|
+
<p>La moneda de pago</p>
|
632
|
+
</div>
|
633
|
+
|
634
|
+
</li>
|
635
|
+
|
636
|
+
<li>
|
637
|
+
<span class="name">:metodoDePago</span>
|
638
|
+
<span class="type">(<tt>String</tt>)</span>
|
639
|
+
<span class="default">
|
640
|
+
|
641
|
+
— default:
|
642
|
+
<tt>''</tt>
|
643
|
+
|
644
|
+
</span>
|
645
|
+
|
646
|
+
— <div class='inline'>
|
647
|
+
<p>El método de pago (depósito bancario? efectivo?)</p>
|
648
|
+
</div>
|
649
|
+
|
650
|
+
</li>
|
651
|
+
|
652
|
+
<li>
|
653
|
+
<span class="name">:lugarExpedicion</span>
|
654
|
+
<span class="type">(<tt>String</tt>)</span>
|
655
|
+
<span class="default">
|
656
|
+
|
657
|
+
— default:
|
658
|
+
<tt>''</tt>
|
659
|
+
|
660
|
+
</span>
|
661
|
+
|
662
|
+
— <div class='inline'>
|
663
|
+
<p>El lugar dónde se expide la factura (Nutopía, México?)</p>
|
664
|
+
</div>
|
665
|
+
|
666
|
+
</li>
|
667
|
+
|
668
|
+
<li>
|
669
|
+
<span class="name">:NumCtaPago</span>
|
670
|
+
<span class="type">(<tt>String</tt>)</span>
|
671
|
+
<span class="default">
|
672
|
+
|
673
|
+
— default:
|
674
|
+
<tt>nil</tt>
|
675
|
+
|
676
|
+
</span>
|
677
|
+
|
678
|
+
— <div class='inline'>
|
679
|
+
<p>El número de cuenta para el pago</p>
|
680
|
+
</div>
|
681
|
+
|
682
|
+
</li>
|
683
|
+
|
684
|
+
</ul>
|
685
|
+
|
686
|
+
|
687
|
+
|
688
|
+
|
689
|
+
|
690
|
+
<p class="tag_title">See Also:</p>
|
691
|
+
<ul class="see">
|
692
|
+
|
693
|
+
<li>Opciones</li>
|
694
|
+
|
695
|
+
</ul>
|
696
|
+
|
697
|
+
</div><table class="source_code">
|
698
|
+
<tr>
|
699
|
+
<td>
|
700
|
+
<pre class="lines">
|
701
|
+
|
702
|
+
|
703
|
+
57
|
704
|
+
58
|
705
|
+
59
|
706
|
+
60
|
707
|
+
61
|
708
|
+
62
|
709
|
+
63
|
710
|
+
64
|
711
|
+
65
|
712
|
+
66
|
713
|
+
67</pre>
|
714
|
+
</td>
|
715
|
+
<td>
|
716
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 57</span>
|
717
|
+
|
718
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_initialize'>initialize</span> <span class='lparen'>(</span><span class='id identifier rubyid_data'>data</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span><span class='op'>=</span><span class='lbrace'>{</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
719
|
+
<span class='comment'>#hack porque dup se caga con instance variables
|
720
|
+
</span> <span class='id identifier rubyid_opts'>opts</span> <span class='op'>=</span> <span class='const'>Marshal</span><span class='op'>::</span><span class='id identifier rubyid_load'>load</span><span class='lparen'>(</span><span class='const'>Marshal</span><span class='period'>.</span><span class='id identifier rubyid_dump'>dump</span><span class='lparen'>(</span><span class='cvar'>@@options</span><span class='rparen'>)</span><span class='rparen'>)</span>
|
721
|
+
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='lbracket'>[</span><span class='symbol'>:defaults</span><span class='rbracket'>]</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span> <span class='id identifier rubyid_data'>data</span>
|
722
|
+
<span class='ivar'>@opciones</span> <span class='op'>=</span> <span class='id identifier rubyid_opts'>opts</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span> <span class='id identifier rubyid_options'>options</span>
|
723
|
+
<span class='id identifier rubyid_data'>data</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span>
|
724
|
+
<span class='id identifier rubyid_method'>method</span> <span class='op'>=</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_k'>k</span><span class='embexpr_end'>}</span><span class='tstring_content'>=</span><span class='tstring_end'>"</span></span>
|
725
|
+
<span class='kw'>next</span> <span class='kw'>if</span> <span class='op'>!</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_respond_to?'>respond_to?</span> <span class='id identifier rubyid_method'>method</span>
|
726
|
+
<span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_send'>send</span> <span class='id identifier rubyid_method'>method</span><span class='comma'>,</span> <span class='id identifier rubyid_v'>v</span>
|
727
|
+
<span class='kw'>end</span>
|
728
|
+
<span class='kw'>end</span></pre>
|
729
|
+
</td>
|
730
|
+
</tr>
|
731
|
+
</table>
|
732
|
+
</div>
|
733
|
+
|
734
|
+
</div>
|
735
|
+
|
736
|
+
|
737
|
+
<div id="class_method_details" class="method_details_list">
|
738
|
+
<h2>Class Method Details</h2>
|
739
|
+
|
740
|
+
|
741
|
+
<div class="method_details first">
|
742
|
+
<h3 class="signature first" id="configure-class_method">
|
743
|
+
|
744
|
+
+ (<tt>Hash</tt>) <strong>configure</strong>(options)
|
745
|
+
|
746
|
+
|
747
|
+
|
748
|
+
|
749
|
+
|
750
|
+
</h3><div class="docstring">
|
751
|
+
<div class="discussion">
|
752
|
+
|
753
|
+
<p>Configurar las opciones default de los comprobantes</p>
|
754
|
+
|
755
|
+
<h2 id="label-Parameters%3A">Parameters:</h2>
|
756
|
+
<dl class="rdoc-list note-list"><dt>options
|
757
|
+
<dd>
|
758
|
+
<p>Las opciones del comprobante: tasa (de impuestos), defaults: un Hash con la
|
759
|
+
moneda (pesos), version (3.2), TipoCambio (1), y tipoDeComprobante
|
760
|
+
(ingreso)</p>
|
761
|
+
</dd></dl>
|
762
|
+
|
763
|
+
|
764
|
+
</div>
|
765
|
+
</div>
|
766
|
+
<div class="tags">
|
767
|
+
|
768
|
+
<p class="tag_title">Returns:</p>
|
769
|
+
<ul class="return">
|
770
|
+
|
771
|
+
<li>
|
772
|
+
|
773
|
+
|
774
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
775
|
+
|
776
|
+
|
777
|
+
|
778
|
+
</li>
|
779
|
+
|
780
|
+
</ul>
|
781
|
+
|
782
|
+
</div><table class="source_code">
|
783
|
+
<tr>
|
784
|
+
<td>
|
785
|
+
<pre class="lines">
|
786
|
+
|
787
|
+
|
788
|
+
34
|
789
|
+
35
|
790
|
+
36
|
791
|
+
37</pre>
|
792
|
+
</td>
|
793
|
+
<td>
|
794
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 34</span>
|
795
|
+
|
796
|
+
<span class='kw'>def</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_configure'>configure</span> <span class='lparen'>(</span><span class='id identifier rubyid_options'>options</span><span class='rparen'>)</span>
|
797
|
+
<span class='cvar'>@@options</span> <span class='op'>=</span> <span class='const'>Comprobante</span><span class='period'>.</span><span class='id identifier rubyid_rmerge'>rmerge</span> <span class='cvar'>@@options</span><span class='comma'>,</span> <span class='id identifier rubyid_options'>options</span>
|
798
|
+
<span class='cvar'>@@options</span>
|
799
|
+
<span class='kw'>end</span></pre>
|
800
|
+
</td>
|
801
|
+
</tr>
|
802
|
+
</table>
|
803
|
+
</div>
|
804
|
+
|
805
|
+
</div>
|
806
|
+
|
807
|
+
<div id="instance_method_details" class="method_details_list">
|
808
|
+
<h2>Instance Method Details</h2>
|
809
|
+
|
810
|
+
|
811
|
+
<div class="method_details first">
|
812
|
+
<h3 class="signature first" id="cadena_original-instance_method">
|
813
|
+
|
814
|
+
- (<tt>String</tt>) <strong>cadena_original</strong>
|
815
|
+
|
816
|
+
|
817
|
+
|
818
|
+
|
819
|
+
|
820
|
+
</h3><div class="docstring">
|
821
|
+
<div class="discussion">
|
822
|
+
|
823
|
+
<p>La cadena original del CFDI</p>
|
824
|
+
|
825
|
+
|
826
|
+
</div>
|
827
|
+
</div>
|
828
|
+
<div class="tags">
|
829
|
+
|
830
|
+
<p class="tag_title">Returns:</p>
|
831
|
+
<ul class="return">
|
832
|
+
|
833
|
+
<li>
|
834
|
+
|
835
|
+
|
836
|
+
<span class='type'>(<tt>String</tt>)</span>
|
837
|
+
|
838
|
+
|
839
|
+
|
840
|
+
—
|
841
|
+
<div class='inline'>
|
842
|
+
<p>Separada por pipes, because fuck you that's why</p>
|
843
|
+
</div>
|
844
|
+
|
845
|
+
</li>
|
846
|
+
|
847
|
+
</ul>
|
848
|
+
|
849
|
+
</div><table class="source_code">
|
850
|
+
<tr>
|
851
|
+
<td>
|
852
|
+
<pre class="lines">
|
853
|
+
|
854
|
+
|
855
|
+
250
|
856
|
+
251
|
857
|
+
252
|
858
|
+
253
|
859
|
+
254
|
860
|
+
255
|
861
|
+
256
|
862
|
+
257
|
863
|
+
258
|
864
|
+
259
|
865
|
+
260
|
866
|
+
261
|
867
|
+
262
|
868
|
+
263
|
869
|
+
264
|
870
|
+
265
|
871
|
+
266
|
872
|
+
267
|
873
|
+
268
|
874
|
+
269
|
875
|
+
270
|
876
|
+
271
|
877
|
+
272
|
878
|
+
273
|
879
|
+
274
|
880
|
+
275
|
881
|
+
276
|
882
|
+
277</pre>
|
883
|
+
</td>
|
884
|
+
<td>
|
885
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 250</span>
|
886
|
+
|
887
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_cadena_original'>cadena_original</span>
|
888
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'>=</span> <span class='lbracket'>[</span><span class='rbracket'>]</span>
|
889
|
+
|
890
|
+
<span class='cvar'>@@datosCadena</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='op'>|</span> <span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_push'>push</span> <span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span> <span class='rbrace'>}</span>
|
891
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'>+=</span> <span class='ivar'>@emisor</span><span class='period'>.</span><span class='id identifier rubyid_cadena_original'>cadena_original</span>
|
892
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'><<</span> <span class='ivar'>@regimen</span>
|
893
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'>+=</span> <span class='ivar'>@receptor</span><span class='period'>.</span><span class='id identifier rubyid_cadena_original'>cadena_original</span>
|
894
|
+
|
895
|
+
<span class='ivar'>@conceptos</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_concepto'>concepto</span><span class='op'>|</span>
|
896
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'>+=</span> <span class='id identifier rubyid_concepto'>concepto</span><span class='period'>.</span><span class='id identifier rubyid_cadena_original'>cadena_original</span>
|
897
|
+
<span class='kw'>end</span>
|
898
|
+
|
899
|
+
<span class='ivar'>@impuestos</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_traslado'>traslado</span><span class='op'>|</span>
|
900
|
+
<span class='id identifier rubyid_params'>params</span> <span class='op'>+=</span> <span class='lbracket'>[</span><span class='id identifier rubyid_traslado'>traslado</span><span class='lbracket'>[</span><span class='symbol'>:impuesto</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='lparen'>(</span><span class='ivar'>@opciones</span><span class='lbracket'>[</span><span class='symbol'>:tasa</span><span class='rbracket'>]</span><span class='op'>*</span><span class='int'>100</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='comma'>,</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subTotal'>subTotal</span><span class='op'>*</span><span class='ivar'>@opciones</span><span class='lbracket'>[</span><span class='symbol'>:tasa</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subTotal'>subTotal</span><span class='op'>*</span><span class='ivar'>@opciones</span><span class='lbracket'>[</span><span class='symbol'>:tasa</span><span class='rbracket'>]</span><span class='rbracket'>]</span>
|
901
|
+
<span class='kw'>end</span>
|
902
|
+
|
903
|
+
<span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_select!'>select!</span> <span class='lbrace'>{</span> <span class='op'>|</span><span class='id identifier rubyid_i'>i</span><span class='op'>|</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='kw'>nil</span> <span class='op'>&&</span> <span class='id identifier rubyid_i'>i</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span> <span class='rbrace'>}</span>
|
904
|
+
<span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_map!'>map!</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_elem'>elem</span><span class='op'>|</span>
|
905
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_elem'>elem</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Float</span>
|
906
|
+
<span class='id identifier rubyid_elem'>elem</span> <span class='op'>=</span> <span class='id identifier rubyid_sprintf'>sprintf</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>%.2f</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='id identifier rubyid_elem'>elem</span><span class='rparen'>)</span>
|
907
|
+
<span class='kw'>else</span>
|
908
|
+
<span class='id identifier rubyid_elem'>elem</span> <span class='op'>=</span> <span class='id identifier rubyid_elem'>elem</span><span class='period'>.</span><span class='id identifier rubyid_to_s'>to_s</span>
|
909
|
+
<span class='kw'>end</span>
|
910
|
+
<span class='id identifier rubyid_elem'>elem</span>
|
911
|
+
<span class='kw'>end</span>
|
912
|
+
|
913
|
+
<span class='kw'>return</span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>||</span><span class='embexpr_beg'>#{</span><span class='id identifier rubyid_params'>params</span><span class='period'>.</span><span class='id identifier rubyid_join'>join</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>|</span><span class='tstring_end'>'</span></span><span class='embexpr_end'>}</span><span class='tstring_content'>||</span><span class='tstring_end'>"</span></span>
|
914
|
+
<span class='kw'>end</span></pre>
|
915
|
+
</td>
|
916
|
+
</tr>
|
917
|
+
</table>
|
918
|
+
</div>
|
919
|
+
|
920
|
+
<div class="method_details ">
|
921
|
+
<h3 class="signature " id="complemento=-instance_method">
|
922
|
+
|
923
|
+
- (<tt><span class='object_link'><a href="Complemento.html" title="CFDI::Complemento (class)">CFDI::Complemento</a></span></tt>) <strong>complemento=</strong>(complemento)
|
924
|
+
|
925
|
+
|
926
|
+
|
927
|
+
|
928
|
+
|
929
|
+
</h3><div class="docstring">
|
930
|
+
<div class="discussion">
|
931
|
+
|
932
|
+
<p>Asigna un complemento al comprobante</p>
|
933
|
+
|
934
|
+
|
935
|
+
</div>
|
936
|
+
</div>
|
937
|
+
<div class="tags">
|
938
|
+
<p class="tag_title">Parameters:</p>
|
939
|
+
<ul class="param">
|
940
|
+
|
941
|
+
<li>
|
942
|
+
|
943
|
+
<span class='name'>complemento</span>
|
944
|
+
|
945
|
+
|
946
|
+
<span class='type'>(<tt>Hash</tt>, <tt><span class='object_link'><a href="Complemento.html" title="CFDI::Complemento (class)">CFDI::Complemento</a></span></tt>)</span>
|
947
|
+
|
948
|
+
|
949
|
+
|
950
|
+
—
|
951
|
+
<div class='inline'>
|
952
|
+
<p>El complemento a agregar</p>
|
953
|
+
</div>
|
954
|
+
|
955
|
+
</li>
|
956
|
+
|
957
|
+
</ul>
|
958
|
+
|
959
|
+
<p class="tag_title">Returns:</p>
|
960
|
+
<ul class="return">
|
961
|
+
|
962
|
+
<li>
|
963
|
+
|
964
|
+
|
965
|
+
<span class='type'>(<tt><span class='object_link'><a href="Complemento.html" title="CFDI::Complemento (class)">CFDI::Complemento</a></span></tt>)</span>
|
966
|
+
|
967
|
+
|
968
|
+
|
969
|
+
</li>
|
970
|
+
|
971
|
+
</ul>
|
972
|
+
|
973
|
+
</div><table class="source_code">
|
974
|
+
<tr>
|
975
|
+
<td>
|
976
|
+
<pre class="lines">
|
977
|
+
|
978
|
+
|
979
|
+
136
|
980
|
+
137
|
981
|
+
138
|
982
|
+
139
|
983
|
+
140</pre>
|
984
|
+
</td>
|
985
|
+
<td>
|
986
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 136</span>
|
987
|
+
|
988
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_complemento='>complemento=</span> <span class='id identifier rubyid_complemento'>complemento</span>
|
989
|
+
<span class='id identifier rubyid_complemento'>complemento</span> <span class='op'>=</span> <span class='const'>Complemento</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_complemento'>complemento</span> <span class='kw'>unless</span> <span class='id identifier rubyid_complemento'>complemento</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Complemento</span>
|
990
|
+
<span class='ivar'>@complemento</span> <span class='op'>=</span> <span class='id identifier rubyid_complemento'>complemento</span>
|
991
|
+
<span class='id identifier rubyid_complemento'>complemento</span>
|
992
|
+
<span class='kw'>end</span></pre>
|
993
|
+
</td>
|
994
|
+
</tr>
|
995
|
+
</table>
|
996
|
+
</div>
|
997
|
+
|
998
|
+
<div class="method_details ">
|
999
|
+
<h3 class="signature " id="conceptos=-instance_method">
|
1000
|
+
|
1001
|
+
- (<tt>Array</tt>) <strong>conceptos=</strong>(conceptos)
|
1002
|
+
|
1003
|
+
|
1004
|
+
|
1005
|
+
|
1006
|
+
|
1007
|
+
</h3><div class="docstring">
|
1008
|
+
<div class="discussion">
|
1009
|
+
|
1010
|
+
<p>Agrega uno o varios conceptos En caso de darle un Hash o un
|
1011
|
+
<span class='object_link'><a href="Concepto.html" title="CFDI::Concepto (class)">CFDI::Concepto</a></span>, agrega este a los conceptos, de otro modo, sobreescribe
|
1012
|
+
los conceptos pre-existentes</p>
|
1013
|
+
|
1014
|
+
|
1015
|
+
</div>
|
1016
|
+
</div>
|
1017
|
+
<div class="tags">
|
1018
|
+
<p class="tag_title">Parameters:</p>
|
1019
|
+
<ul class="param">
|
1020
|
+
|
1021
|
+
<li>
|
1022
|
+
|
1023
|
+
<span class='name'>conceptos</span>
|
1024
|
+
|
1025
|
+
|
1026
|
+
<span class='type'>(<tt>Array</tt>, <tt>Hash</tt>, <tt><span class='object_link'><a href="Concepto.html" title="CFDI::Concepto (class)">CFDI::Concepto</a></span></tt>)</span>
|
1027
|
+
|
1028
|
+
|
1029
|
+
|
1030
|
+
—
|
1031
|
+
<div class='inline'>
|
1032
|
+
<p>Uno o varios conceptos</p>
|
1033
|
+
</div>
|
1034
|
+
|
1035
|
+
</li>
|
1036
|
+
|
1037
|
+
</ul>
|
1038
|
+
|
1039
|
+
<p class="tag_title">Returns:</p>
|
1040
|
+
<ul class="return">
|
1041
|
+
|
1042
|
+
<li>
|
1043
|
+
|
1044
|
+
|
1045
|
+
<span class='type'>(<tt>Array</tt>)</span>
|
1046
|
+
|
1047
|
+
|
1048
|
+
|
1049
|
+
—
|
1050
|
+
<div class='inline'>
|
1051
|
+
<p>Los conceptos de este comprobante</p>
|
1052
|
+
</div>
|
1053
|
+
|
1054
|
+
</li>
|
1055
|
+
|
1056
|
+
</ul>
|
1057
|
+
|
1058
|
+
</div><table class="source_code">
|
1059
|
+
<tr>
|
1060
|
+
<td>
|
1061
|
+
<pre class="lines">
|
1062
|
+
|
1063
|
+
|
1064
|
+
116
|
1065
|
+
117
|
1066
|
+
118
|
1067
|
+
119
|
1068
|
+
120
|
1069
|
+
121
|
1070
|
+
122
|
1071
|
+
123
|
1072
|
+
124
|
1073
|
+
125
|
1074
|
+
126
|
1075
|
+
127
|
1076
|
+
128
|
1077
|
+
129</pre>
|
1078
|
+
</td>
|
1079
|
+
<td>
|
1080
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 116</span>
|
1081
|
+
|
1082
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_conceptos='>conceptos=</span> <span class='id identifier rubyid_conceptos'>conceptos</span>
|
1083
|
+
<span class='kw'>if</span> <span class='id identifier rubyid_conceptos'>conceptos</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Array</span>
|
1084
|
+
<span class='id identifier rubyid_conceptos'>conceptos</span><span class='period'>.</span><span class='id identifier rubyid_map!'>map!</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_concepto'>concepto</span><span class='op'>|</span>
|
1085
|
+
<span class='id identifier rubyid_concepto'>concepto</span> <span class='op'>=</span> <span class='const'>Concepto</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_concepto'>concepto</span> <span class='kw'>unless</span> <span class='id identifier rubyid_concepto'>concepto</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Concepto</span>
|
1086
|
+
<span class='kw'>end</span>
|
1087
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_conceptos'>conceptos</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Hash</span>
|
1088
|
+
<span class='id identifier rubyid_conceptos'>conceptos</span> <span class='op'><<</span> <span class='const'>Concepto</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span><span class='lparen'>(</span><span class='id identifier rubyid_concepto'>concepto</span><span class='rparen'>)</span>
|
1089
|
+
<span class='kw'>elsif</span> <span class='id identifier rubyid_conceptos'>conceptos</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Concepto</span>
|
1090
|
+
<span class='id identifier rubyid_conceptos'>conceptos</span> <span class='op'><<</span> <span class='id identifier rubyid_conceptos'>conceptos</span>
|
1091
|
+
<span class='kw'>end</span>
|
1092
|
+
|
1093
|
+
<span class='ivar'>@conceptos</span> <span class='op'>=</span> <span class='id identifier rubyid_conceptos'>conceptos</span>
|
1094
|
+
<span class='id identifier rubyid_conceptos'>conceptos</span>
|
1095
|
+
<span class='kw'>end</span></pre>
|
1096
|
+
</td>
|
1097
|
+
</tr>
|
1098
|
+
</table>
|
1099
|
+
</div>
|
1100
|
+
|
1101
|
+
<div class="method_details ">
|
1102
|
+
<h3 class="signature " id="emisor=-instance_method">
|
1103
|
+
|
1104
|
+
- (<tt><span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">CFDI::Entidad</a></span></tt>) <strong>emisor=</strong>(emisor)
|
1105
|
+
|
1106
|
+
|
1107
|
+
|
1108
|
+
|
1109
|
+
|
1110
|
+
</h3><div class="docstring">
|
1111
|
+
<div class="discussion">
|
1112
|
+
|
1113
|
+
<p>Asigna un emisor de tipo <span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">Entidad</a></span></p>
|
1114
|
+
|
1115
|
+
|
1116
|
+
</div>
|
1117
|
+
</div>
|
1118
|
+
<div class="tags">
|
1119
|
+
<p class="tag_title">Parameters:</p>
|
1120
|
+
<ul class="param">
|
1121
|
+
|
1122
|
+
<li>
|
1123
|
+
|
1124
|
+
<span class='name'>emisor</span>
|
1125
|
+
|
1126
|
+
|
1127
|
+
<span class='type'>(<tt>Hash</tt>, <tt><span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">CFDI::Entidad</a></span></tt>)</span>
|
1128
|
+
|
1129
|
+
|
1130
|
+
|
1131
|
+
—
|
1132
|
+
<div class='inline'>
|
1133
|
+
<p>Los datos de un emisor</p>
|
1134
|
+
</div>
|
1135
|
+
|
1136
|
+
</li>
|
1137
|
+
|
1138
|
+
</ul>
|
1139
|
+
|
1140
|
+
<p class="tag_title">Returns:</p>
|
1141
|
+
<ul class="return">
|
1142
|
+
|
1143
|
+
<li>
|
1144
|
+
|
1145
|
+
|
1146
|
+
<span class='type'>(<tt><span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">CFDI::Entidad</a></span></tt>)</span>
|
1147
|
+
|
1148
|
+
|
1149
|
+
|
1150
|
+
—
|
1151
|
+
<div class='inline'>
|
1152
|
+
<p>Una entidad</p>
|
1153
|
+
</div>
|
1154
|
+
|
1155
|
+
</li>
|
1156
|
+
|
1157
|
+
</ul>
|
1158
|
+
|
1159
|
+
</div><table class="source_code">
|
1160
|
+
<tr>
|
1161
|
+
<td>
|
1162
|
+
<pre class="lines">
|
1163
|
+
|
1164
|
+
|
1165
|
+
94
|
1166
|
+
95
|
1167
|
+
96
|
1168
|
+
97</pre>
|
1169
|
+
</td>
|
1170
|
+
<td>
|
1171
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 94</span>
|
1172
|
+
|
1173
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_emisor='>emisor=</span> <span class='id identifier rubyid_emisor'>emisor</span>
|
1174
|
+
<span class='id identifier rubyid_emisor'>emisor</span> <span class='op'>=</span> <span class='const'>Entidad</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_emisor'>emisor</span> <span class='kw'>unless</span> <span class='id identifier rubyid_emisor'>emisor</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Entidad</span>
|
1175
|
+
<span class='ivar'>@emisor</span> <span class='op'>=</span> <span class='id identifier rubyid_emisor'>emisor</span><span class='semicolon'>;</span>
|
1176
|
+
<span class='kw'>end</span></pre>
|
1177
|
+
</td>
|
1178
|
+
</tr>
|
1179
|
+
</table>
|
1180
|
+
</div>
|
1181
|
+
|
1182
|
+
<div class="method_details ">
|
1183
|
+
<h3 class="signature " id="fecha=-instance_method">
|
1184
|
+
|
1185
|
+
- (<tt>String</tt>) <strong>fecha=</strong>(fecha)
|
1186
|
+
|
1187
|
+
|
1188
|
+
|
1189
|
+
|
1190
|
+
|
1191
|
+
</h3><div class="docstring">
|
1192
|
+
<div class="discussion">
|
1193
|
+
|
1194
|
+
<p>Asigna una fecha al comprobante</p>
|
1195
|
+
|
1196
|
+
|
1197
|
+
</div>
|
1198
|
+
</div>
|
1199
|
+
<div class="tags">
|
1200
|
+
<p class="tag_title">Parameters:</p>
|
1201
|
+
<ul class="param">
|
1202
|
+
|
1203
|
+
<li>
|
1204
|
+
|
1205
|
+
<span class='name'>fecha</span>
|
1206
|
+
|
1207
|
+
|
1208
|
+
<span class='type'>(<tt>Time</tt>, <tt>String</tt>)</span>
|
1209
|
+
|
1210
|
+
|
1211
|
+
|
1212
|
+
—
|
1213
|
+
<div class='inline'>
|
1214
|
+
<p>La fecha y hora (YYYY-MM-DDTHH:mm:SS) de la emisión</p>
|
1215
|
+
</div>
|
1216
|
+
|
1217
|
+
</li>
|
1218
|
+
|
1219
|
+
</ul>
|
1220
|
+
|
1221
|
+
<p class="tag_title">Returns:</p>
|
1222
|
+
<ul class="return">
|
1223
|
+
|
1224
|
+
<li>
|
1225
|
+
|
1226
|
+
|
1227
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1228
|
+
|
1229
|
+
|
1230
|
+
|
1231
|
+
—
|
1232
|
+
<div class='inline'>
|
1233
|
+
<p>la fecha en formato '%FT%R:%S'</p>
|
1234
|
+
</div>
|
1235
|
+
|
1236
|
+
</li>
|
1237
|
+
|
1238
|
+
</ul>
|
1239
|
+
|
1240
|
+
</div><table class="source_code">
|
1241
|
+
<tr>
|
1242
|
+
<td>
|
1243
|
+
<pre class="lines">
|
1244
|
+
|
1245
|
+
|
1246
|
+
147
|
1247
|
+
148
|
1248
|
+
149
|
1249
|
+
150</pre>
|
1250
|
+
</td>
|
1251
|
+
<td>
|
1252
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 147</span>
|
1253
|
+
|
1254
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_fecha='>fecha=</span> <span class='id identifier rubyid_fecha'>fecha</span>
|
1255
|
+
<span class='id identifier rubyid_fecha'>fecha</span> <span class='op'>=</span> <span class='id identifier rubyid_fecha'>fecha</span><span class='period'>.</span><span class='id identifier rubyid_strftime'>strftime</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>%FT%R:%S</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span> <span class='kw'>unless</span> <span class='id identifier rubyid_fecha'>fecha</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>String</span>
|
1256
|
+
<span class='ivar'>@fecha</span> <span class='op'>=</span> <span class='id identifier rubyid_fecha'>fecha</span>
|
1257
|
+
<span class='kw'>end</span></pre>
|
1258
|
+
</td>
|
1259
|
+
</tr>
|
1260
|
+
</table>
|
1261
|
+
</div>
|
1262
|
+
|
1263
|
+
<div class="method_details ">
|
1264
|
+
<h3 class="signature " id="receptor=-instance_method">
|
1265
|
+
|
1266
|
+
- (<tt><span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">CFDI::Entidad</a></span></tt>) <strong>receptor=</strong>(receptor)
|
1267
|
+
|
1268
|
+
|
1269
|
+
|
1270
|
+
|
1271
|
+
|
1272
|
+
</h3><div class="docstring">
|
1273
|
+
<div class="discussion">
|
1274
|
+
|
1275
|
+
<p>Asigna un receptor</p>
|
1276
|
+
|
1277
|
+
|
1278
|
+
</div>
|
1279
|
+
</div>
|
1280
|
+
<div class="tags">
|
1281
|
+
<p class="tag_title">Parameters:</p>
|
1282
|
+
<ul class="param">
|
1283
|
+
|
1284
|
+
<li>
|
1285
|
+
|
1286
|
+
<span class='name'>receptor</span>
|
1287
|
+
|
1288
|
+
|
1289
|
+
<span class='type'>(<tt>Hash</tt>, <tt><span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">CFDI::Entidad</a></span></tt>)</span>
|
1290
|
+
|
1291
|
+
|
1292
|
+
|
1293
|
+
—
|
1294
|
+
<div class='inline'>
|
1295
|
+
<p>Los datos de un receptor</p>
|
1296
|
+
</div>
|
1297
|
+
|
1298
|
+
</li>
|
1299
|
+
|
1300
|
+
</ul>
|
1301
|
+
|
1302
|
+
<p class="tag_title">Returns:</p>
|
1303
|
+
<ul class="return">
|
1304
|
+
|
1305
|
+
<li>
|
1306
|
+
|
1307
|
+
|
1308
|
+
<span class='type'>(<tt><span class='object_link'><a href="Entidad.html" title="CFDI::Entidad (class)">CFDI::Entidad</a></span></tt>)</span>
|
1309
|
+
|
1310
|
+
|
1311
|
+
|
1312
|
+
—
|
1313
|
+
<div class='inline'>
|
1314
|
+
<p>Una entidad</p>
|
1315
|
+
</div>
|
1316
|
+
|
1317
|
+
</li>
|
1318
|
+
|
1319
|
+
</ul>
|
1320
|
+
|
1321
|
+
</div><table class="source_code">
|
1322
|
+
<tr>
|
1323
|
+
<td>
|
1324
|
+
<pre class="lines">
|
1325
|
+
|
1326
|
+
|
1327
|
+
104
|
1328
|
+
105
|
1329
|
+
106
|
1330
|
+
107
|
1331
|
+
108</pre>
|
1332
|
+
</td>
|
1333
|
+
<td>
|
1334
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 104</span>
|
1335
|
+
|
1336
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_receptor='>receptor=</span> <span class='id identifier rubyid_receptor'>receptor</span>
|
1337
|
+
<span class='id identifier rubyid_receptor'>receptor</span> <span class='op'>=</span> <span class='const'>Entidad</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='id identifier rubyid_receptor'>receptor</span> <span class='kw'>unless</span> <span class='id identifier rubyid_receptor'>receptor</span><span class='period'>.</span><span class='id identifier rubyid_is_a?'>is_a?</span> <span class='const'>Entidad</span>
|
1338
|
+
<span class='ivar'>@receptor</span> <span class='op'>=</span> <span class='id identifier rubyid_receptor'>receptor</span><span class='semicolon'>;</span>
|
1339
|
+
<span class='id identifier rubyid_receptor'>receptor</span>
|
1340
|
+
<span class='kw'>end</span></pre>
|
1341
|
+
</td>
|
1342
|
+
</tr>
|
1343
|
+
</table>
|
1344
|
+
</div>
|
1345
|
+
|
1346
|
+
<div class="method_details ">
|
1347
|
+
<h3 class="signature " id="subTotal-instance_method">
|
1348
|
+
|
1349
|
+
- (<tt><span class='object_link'><a href="../Float.html" title="Float (class)">Float</a></span></tt>) <strong>subTotal</strong>
|
1350
|
+
|
1351
|
+
|
1352
|
+
|
1353
|
+
|
1354
|
+
|
1355
|
+
</h3><div class="docstring">
|
1356
|
+
<div class="discussion">
|
1357
|
+
|
1358
|
+
<p>Regresa el subtotal de este comprobante, tomando el importe de cada
|
1359
|
+
concepto</p>
|
1360
|
+
|
1361
|
+
|
1362
|
+
</div>
|
1363
|
+
</div>
|
1364
|
+
<div class="tags">
|
1365
|
+
|
1366
|
+
<p class="tag_title">Returns:</p>
|
1367
|
+
<ul class="return">
|
1368
|
+
|
1369
|
+
<li>
|
1370
|
+
|
1371
|
+
|
1372
|
+
<span class='type'>(<tt><span class='object_link'><a href="../Float.html" title="Float (class)">Float</a></span></tt>)</span>
|
1373
|
+
|
1374
|
+
|
1375
|
+
|
1376
|
+
—
|
1377
|
+
<div class='inline'>
|
1378
|
+
<p>El subtotal del comprobante</p>
|
1379
|
+
</div>
|
1380
|
+
|
1381
|
+
</li>
|
1382
|
+
|
1383
|
+
</ul>
|
1384
|
+
|
1385
|
+
</div><table class="source_code">
|
1386
|
+
<tr>
|
1387
|
+
<td>
|
1388
|
+
<pre class="lines">
|
1389
|
+
|
1390
|
+
|
1391
|
+
73
|
1392
|
+
74
|
1393
|
+
75
|
1394
|
+
76
|
1395
|
+
77
|
1396
|
+
78
|
1397
|
+
79</pre>
|
1398
|
+
</td>
|
1399
|
+
<td>
|
1400
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 73</span>
|
1401
|
+
|
1402
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_subTotal'>subTotal</span>
|
1403
|
+
<span class='id identifier rubyid_ret'>ret</span> <span class='op'>=</span> <span class='int'>0</span>
|
1404
|
+
<span class='ivar'>@conceptos</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_c'>c</span><span class='op'>|</span>
|
1405
|
+
<span class='id identifier rubyid_ret'>ret</span> <span class='op'>+=</span> <span class='id identifier rubyid_c'>c</span><span class='period'>.</span><span class='id identifier rubyid_importe'>importe</span>
|
1406
|
+
<span class='kw'>end</span>
|
1407
|
+
<span class='id identifier rubyid_ret'>ret</span>
|
1408
|
+
<span class='kw'>end</span></pre>
|
1409
|
+
</td>
|
1410
|
+
</tr>
|
1411
|
+
</table>
|
1412
|
+
</div>
|
1413
|
+
|
1414
|
+
<div class="method_details ">
|
1415
|
+
<h3 class="signature " id="to_h-instance_method">
|
1416
|
+
|
1417
|
+
- (<tt>Hash</tt>) <strong>to_h</strong>
|
1418
|
+
|
1419
|
+
|
1420
|
+
|
1421
|
+
|
1422
|
+
|
1423
|
+
</h3><div class="docstring">
|
1424
|
+
<div class="discussion">
|
1425
|
+
|
1426
|
+
<p>Un hash con todos los datos del comprobante, listo para Hash.to_json</p>
|
1427
|
+
|
1428
|
+
|
1429
|
+
</div>
|
1430
|
+
</div>
|
1431
|
+
<div class="tags">
|
1432
|
+
|
1433
|
+
<p class="tag_title">Returns:</p>
|
1434
|
+
<ul class="return">
|
1435
|
+
|
1436
|
+
<li>
|
1437
|
+
|
1438
|
+
|
1439
|
+
<span class='type'>(<tt>Hash</tt>)</span>
|
1440
|
+
|
1441
|
+
|
1442
|
+
|
1443
|
+
—
|
1444
|
+
<div class='inline'>
|
1445
|
+
<p>El comprobante como Hash</p>
|
1446
|
+
</div>
|
1447
|
+
|
1448
|
+
</li>
|
1449
|
+
|
1450
|
+
</ul>
|
1451
|
+
|
1452
|
+
</div><table class="source_code">
|
1453
|
+
<tr>
|
1454
|
+
<td>
|
1455
|
+
<pre class="lines">
|
1456
|
+
|
1457
|
+
|
1458
|
+
236
|
1459
|
+
237
|
1460
|
+
238
|
1461
|
+
239
|
1462
|
+
240
|
1463
|
+
241
|
1464
|
+
242
|
1465
|
+
243
|
1466
|
+
244</pre>
|
1467
|
+
</td>
|
1468
|
+
<td>
|
1469
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 236</span>
|
1470
|
+
|
1471
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_to_h'>to_h</span>
|
1472
|
+
<span class='id identifier rubyid_hash'>hash</span> <span class='op'>=</span> <span class='lbrace'>{</span><span class='rbrace'>}</span>
|
1473
|
+
<span class='cvar'>@@data</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_key'>key</span><span class='op'>|</span>
|
1474
|
+
<span class='id identifier rubyid_data'>data</span> <span class='op'>=</span> <span class='id identifier rubyid_deep_to_h'>deep_to_h</span> <span class='id identifier rubyid_send'>send</span><span class='lparen'>(</span><span class='id identifier rubyid_key'>key</span><span class='rparen'>)</span>
|
1475
|
+
<span class='id identifier rubyid_hash'>hash</span><span class='lbracket'>[</span><span class='id identifier rubyid_key'>key</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='id identifier rubyid_data'>data</span>
|
1476
|
+
<span class='kw'>end</span>
|
1477
|
+
|
1478
|
+
<span class='kw'>return</span> <span class='id identifier rubyid_hash'>hash</span>
|
1479
|
+
<span class='kw'>end</span></pre>
|
1480
|
+
</td>
|
1481
|
+
</tr>
|
1482
|
+
</table>
|
1483
|
+
</div>
|
1484
|
+
|
1485
|
+
<div class="method_details ">
|
1486
|
+
<h3 class="signature " id="to_xml-instance_method">
|
1487
|
+
|
1488
|
+
- (<tt>String</tt>) <strong>to_xml</strong>
|
1489
|
+
|
1490
|
+
|
1491
|
+
|
1492
|
+
|
1493
|
+
|
1494
|
+
</h3><div class="docstring">
|
1495
|
+
<div class="discussion">
|
1496
|
+
|
1497
|
+
<p>El comprobante como XML</p>
|
1498
|
+
|
1499
|
+
|
1500
|
+
</div>
|
1501
|
+
</div>
|
1502
|
+
<div class="tags">
|
1503
|
+
|
1504
|
+
<p class="tag_title">Returns:</p>
|
1505
|
+
<ul class="return">
|
1506
|
+
|
1507
|
+
<li>
|
1508
|
+
|
1509
|
+
|
1510
|
+
<span class='type'>(<tt>String</tt>)</span>
|
1511
|
+
|
1512
|
+
|
1513
|
+
|
1514
|
+
—
|
1515
|
+
<div class='inline'>
|
1516
|
+
<p>El comprobante namespaceado en versión 3.2 (porque soy un huevón)</p>
|
1517
|
+
</div>
|
1518
|
+
|
1519
|
+
</li>
|
1520
|
+
|
1521
|
+
</ul>
|
1522
|
+
|
1523
|
+
</div><table class="source_code">
|
1524
|
+
<tr>
|
1525
|
+
<td>
|
1526
|
+
<pre class="lines">
|
1527
|
+
|
1528
|
+
|
1529
|
+
156
|
1530
|
+
157
|
1531
|
+
158
|
1532
|
+
159
|
1533
|
+
160
|
1534
|
+
161
|
1535
|
+
162
|
1536
|
+
163
|
1537
|
+
164
|
1538
|
+
165
|
1539
|
+
166
|
1540
|
+
167
|
1541
|
+
168
|
1542
|
+
169
|
1543
|
+
170
|
1544
|
+
171
|
1545
|
+
172
|
1546
|
+
173
|
1547
|
+
174
|
1548
|
+
175
|
1549
|
+
176
|
1550
|
+
177
|
1551
|
+
178
|
1552
|
+
179
|
1553
|
+
180
|
1554
|
+
181
|
1555
|
+
182
|
1556
|
+
183
|
1557
|
+
184
|
1558
|
+
185
|
1559
|
+
186
|
1560
|
+
187
|
1561
|
+
188
|
1562
|
+
189
|
1563
|
+
190
|
1564
|
+
191
|
1565
|
+
192
|
1566
|
+
193
|
1567
|
+
194
|
1568
|
+
195
|
1569
|
+
196
|
1570
|
+
197
|
1571
|
+
198
|
1572
|
+
199
|
1573
|
+
200
|
1574
|
+
201
|
1575
|
+
202
|
1576
|
+
203
|
1577
|
+
204
|
1578
|
+
205
|
1579
|
+
206
|
1580
|
+
207
|
1581
|
+
208
|
1582
|
+
209
|
1583
|
+
210
|
1584
|
+
211
|
1585
|
+
212
|
1586
|
+
213
|
1587
|
+
214
|
1588
|
+
215
|
1589
|
+
216
|
1590
|
+
217
|
1591
|
+
218
|
1592
|
+
219
|
1593
|
+
220
|
1594
|
+
221
|
1595
|
+
222
|
1596
|
+
223
|
1597
|
+
224
|
1598
|
+
225
|
1599
|
+
226
|
1600
|
+
227
|
1601
|
+
228
|
1602
|
+
229
|
1603
|
+
230</pre>
|
1604
|
+
</td>
|
1605
|
+
<td>
|
1606
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 156</span>
|
1607
|
+
|
1608
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_to_xml'>to_xml</span>
|
1609
|
+
<span class='id identifier rubyid_ns'>ns</span> <span class='op'>=</span> <span class='lbrace'>{</span>
|
1610
|
+
<span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>xmlns:cfdi</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>http://www.sat.gob.mx/cfd/3</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
1611
|
+
<span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>xmlns:xsi</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>http://www.w3.org/2001/XMLSchema-instance</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
1612
|
+
<span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>xsi:schemaLocation</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>"</span><span class='tstring_content'>http://www.sat.gob.mx/cfd/3 http://www.sat.gob.mx/sitio_internet/cfd/3/cfdv32.xsd</span><span class='tstring_end'>"</span></span><span class='comma'>,</span>
|
1613
|
+
<span class='label'>version:</span> <span class='ivar'>@version</span><span class='comma'>,</span>
|
1614
|
+
<span class='label'>folio:</span> <span class='ivar'>@folio</span><span class='comma'>,</span>
|
1615
|
+
<span class='label'>fecha:</span> <span class='ivar'>@fecha</span><span class='comma'>,</span>
|
1616
|
+
<span class='label'>formaDePago:</span> <span class='ivar'>@formaDePago</span><span class='comma'>,</span>
|
1617
|
+
<span class='label'>condicionesDePago:</span> <span class='ivar'>@condicionesDePago</span><span class='comma'>,</span>
|
1618
|
+
<span class='label'>subTotal:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subTotal'>subTotal</span><span class='comma'>,</span>
|
1619
|
+
<span class='label'>Moneda:</span> <span class='ivar'>@moneda</span><span class='comma'>,</span>
|
1620
|
+
<span class='label'>total:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_total'>total</span><span class='comma'>,</span>
|
1621
|
+
<span class='label'>metodoDePago:</span> <span class='ivar'>@metodoDePago</span><span class='comma'>,</span>
|
1622
|
+
<span class='label'>tipoDeComprobante:</span> <span class='ivar'>@tipoDeComprobante</span><span class='comma'>,</span>
|
1623
|
+
<span class='label'>LugarExpedicion:</span> <span class='ivar'>@lugarExpedicion</span><span class='comma'>,</span>
|
1624
|
+
<span class='rbrace'>}</span>
|
1625
|
+
<span class='id identifier rubyid_ns'>ns</span><span class='lbracket'>[</span><span class='symbol'>:serie</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@serie</span> <span class='kw'>if</span> <span class='ivar'>@serie</span>
|
1626
|
+
<span class='id identifier rubyid_ns'>ns</span><span class='lbracket'>[</span><span class='symbol'>:TipoCambio</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@TipoCambio</span> <span class='kw'>if</span> <span class='ivar'>@TipoCambio</span>
|
1627
|
+
<span class='id identifier rubyid_ns'>ns</span><span class='lbracket'>[</span><span class='symbol'>:NumCtaPago</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@NumCtaPago</span> <span class='kw'>if</span> <span class='ivar'>@NumCtaPago</span>
|
1628
|
+
|
1629
|
+
<span class='kw'>if</span> <span class='ivar'>@noCertificado</span>
|
1630
|
+
<span class='id identifier rubyid_ns'>ns</span><span class='lbracket'>[</span><span class='symbol'>:noCertificado</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@noCertificado</span>
|
1631
|
+
<span class='id identifier rubyid_ns'>ns</span><span class='lbracket'>[</span><span class='symbol'>:certificado</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@certificado</span>
|
1632
|
+
<span class='kw'>end</span>
|
1633
|
+
|
1634
|
+
<span class='kw'>if</span> <span class='ivar'>@sello</span>
|
1635
|
+
<span class='id identifier rubyid_ns'>ns</span><span class='lbracket'>[</span><span class='symbol'>:sello</span><span class='rbracket'>]</span> <span class='op'>=</span> <span class='ivar'>@sello</span>
|
1636
|
+
<span class='kw'>end</span>
|
1637
|
+
|
1638
|
+
<span class='ivar'>@builder</span> <span class='op'>=</span> <span class='const'>Nokogiri</span><span class='op'>::</span><span class='const'>XML</span><span class='op'>::</span><span class='const'>Builder</span><span class='period'>.</span><span class='id identifier rubyid_new'>new</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_xml'>xml</span><span class='op'>|</span>
|
1639
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Comprobante</span><span class='lparen'>(</span><span class='id identifier rubyid_ns'>ns</span><span class='rparen'>)</span> <span class='kw'>do</span>
|
1640
|
+
<span class='id identifier rubyid_ins'>ins</span> <span class='op'>=</span> <span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='id identifier rubyid_doc'>doc</span><span class='period'>.</span><span class='id identifier rubyid_root'>root</span><span class='period'>.</span><span class='id identifier rubyid_add_namespace_definition'>add_namespace_definition</span><span class='lparen'>(</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>cfdi</span><span class='tstring_end'>'</span></span><span class='comma'>,</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>http://www.sat.gob.mx/cfd/3</span><span class='tstring_end'>'</span></span><span class='rparen'>)</span>
|
1641
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='id identifier rubyid_doc'>doc</span><span class='period'>.</span><span class='id identifier rubyid_root'>root</span><span class='period'>.</span><span class='id identifier rubyid_namespace'>namespace</span> <span class='op'>=</span> <span class='id identifier rubyid_ins'>ins</span>
|
1642
|
+
|
1643
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Emisor</span><span class='lparen'>(</span><span class='ivar'>@emisor</span><span class='period'>.</span><span class='id identifier rubyid_ns'>ns</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
|
1644
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>DomicilioFiscal</span><span class='lparen'>(</span><span class='ivar'>@emisor</span><span class='period'>.</span><span class='id identifier rubyid_domicilioFiscal'>domicilioFiscal</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>==</span> <span class='kw'>nil</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1645
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>ExpedidoEn</span><span class='lparen'>(</span><span class='ivar'>@emisor</span><span class='period'>.</span><span class='id identifier rubyid_expedidoEn'>expedidoEn</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='op'>||</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1646
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>RegimenFiscal</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='label'>Regimen:</span> <span class='ivar'>@emisor</span><span class='period'>.</span><span class='id identifier rubyid_regimenFiscal'>regimenFiscal</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1647
|
+
<span class='rbrace'>}</span>
|
1648
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Receptor</span><span class='lparen'>(</span><span class='ivar'>@receptor</span><span class='period'>.</span><span class='id identifier rubyid_ns'>ns</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
|
1649
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Domicilio</span><span class='lparen'>(</span><span class='ivar'>@receptor</span><span class='period'>.</span><span class='id identifier rubyid_domicilioFiscal'>domicilioFiscal</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='period'>.</span><span class='id identifier rubyid_reject'>reject</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>==</span> <span class='kw'>nil</span> <span class='op'>||</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>==</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1650
|
+
<span class='rbrace'>}</span>
|
1651
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Conceptos</span> <span class='lbrace'>{</span>
|
1652
|
+
<span class='ivar'>@conceptos</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_concepto'>concepto</span><span class='op'>|</span>
|
1653
|
+
<span class='comment'># select porque luego se caga el xml si incluyo noIdentificacion y es empty
|
1654
|
+
</span> <span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Concepto</span><span class='lparen'>(</span><span class='id identifier rubyid_concepto'>concepto</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='period'>.</span><span class='id identifier rubyid_select'>select</span> <span class='lbrace'>{</span><span class='op'>|</span><span class='id identifier rubyid_k'>k</span><span class='comma'>,</span><span class='id identifier rubyid_v'>v</span><span class='op'>|</span> <span class='id identifier rubyid_v'>v</span><span class='op'>!=</span><span class='kw'>nil</span> <span class='op'>&&</span> <span class='id identifier rubyid_v'>v</span> <span class='op'>!=</span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_end'>'</span></span><span class='rbrace'>}</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
|
1655
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>ComplementoConcepto</span>
|
1656
|
+
<span class='rbrace'>}</span>
|
1657
|
+
<span class='kw'>end</span>
|
1658
|
+
<span class='rbrace'>}</span>
|
1659
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Impuestos</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='label'>totalImpuestosTrasladados:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subTotal'>subTotal</span><span class='op'>*</span><span class='ivar'>@opciones</span><span class='lbracket'>[</span><span class='symbol'>:tasa</span><span class='rbracket'>]</span><span class='rbrace'>}</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
|
1660
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Traslados</span> <span class='lbrace'>{</span>
|
1661
|
+
<span class='ivar'>@impuestos</span><span class='period'>.</span><span class='id identifier rubyid_each'>each</span> <span class='kw'>do</span> <span class='op'>|</span><span class='id identifier rubyid_impuesto'>impuesto</span><span class='op'>|</span>
|
1662
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Traslado</span><span class='lparen'>(</span><span class='lbrace'>{</span><span class='label'>impuesto:</span> <span class='id identifier rubyid_impuesto'>impuesto</span><span class='lbracket'>[</span><span class='symbol'>:impuesto</span><span class='rbracket'>]</span><span class='comma'>,</span> <span class='label'>tasa:</span><span class='lparen'>(</span><span class='ivar'>@opciones</span><span class='lbracket'>[</span><span class='symbol'>:tasa</span><span class='rbracket'>]</span><span class='op'>*</span><span class='int'>100</span><span class='rparen'>)</span><span class='period'>.</span><span class='id identifier rubyid_to_i'>to_i</span><span class='comma'>,</span> <span class='label'>importe:</span> <span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subTotal'>subTotal</span><span class='op'>*</span><span class='ivar'>@opciones</span><span class='lbracket'>[</span><span class='symbol'>:tasa</span><span class='rbracket'>]</span><span class='rbrace'>}</span><span class='rparen'>)</span>
|
1663
|
+
<span class='kw'>end</span>
|
1664
|
+
<span class='rbrace'>}</span>
|
1665
|
+
<span class='rbrace'>}</span>
|
1666
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='period'>.</span><span class='const'>Complemento</span> <span class='lbrace'>{</span>
|
1667
|
+
|
1668
|
+
<span class='kw'>if</span> <span class='ivar'>@complemento</span>
|
1669
|
+
<span class='id identifier rubyid_nsTFD'>nsTFD</span> <span class='op'>=</span> <span class='lbrace'>{</span>
|
1670
|
+
<span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>xsi:schemaLocation</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>http://www.sat.gob.mx/TimbreFiscalDigital http://www.sat.gob.mx/TimbreFiscalDigital/TimbreFiscalDigital.xsd</span><span class='tstring_end'>'</span></span><span class='comma'>,</span>
|
1671
|
+
<span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>xmlns:tfd</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>http://www.sat.gob.mx/TimbreFiscalDigital</span><span class='tstring_end'>'</span></span><span class='comma'>,</span>
|
1672
|
+
<span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>xmlns:xsi</span><span class='tstring_end'>'</span></span> <span class='op'>=></span> <span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>http://www.w3.org/2001/XMLSchema-instance</span><span class='tstring_end'>'</span></span>
|
1673
|
+
<span class='rbrace'>}</span>
|
1674
|
+
<span class='id identifier rubyid_xml'>xml</span><span class='lbracket'>[</span><span class='tstring'><span class='tstring_beg'>'</span><span class='tstring_content'>tfd</span><span class='tstring_end'>'</span></span><span class='rbracket'>]</span><span class='period'>.</span><span class='const'>TimbreFiscalDigital</span><span class='lparen'>(</span><span class='ivar'>@complemento</span><span class='period'>.</span><span class='id identifier rubyid_to_h'>to_h</span><span class='period'>.</span><span class='id identifier rubyid_merge'>merge</span> <span class='id identifier rubyid_nsTFD'>nsTFD</span><span class='rparen'>)</span> <span class='lbrace'>{</span>
|
1675
|
+
<span class='rbrace'>}</span>
|
1676
|
+
|
1677
|
+
<span class='kw'>end</span>
|
1678
|
+
<span class='rbrace'>}</span>
|
1679
|
+
<span class='kw'>end</span>
|
1680
|
+
<span class='kw'>end</span>
|
1681
|
+
<span class='ivar'>@builder</span><span class='period'>.</span><span class='id identifier rubyid_to_xml'>to_xml</span>
|
1682
|
+
<span class='kw'>end</span></pre>
|
1683
|
+
</td>
|
1684
|
+
</tr>
|
1685
|
+
</table>
|
1686
|
+
</div>
|
1687
|
+
|
1688
|
+
<div class="method_details ">
|
1689
|
+
<h3 class="signature " id="total-instance_method">
|
1690
|
+
|
1691
|
+
- (<tt><span class='object_link'><a href="../Float.html" title="Float (class)">Float</a></span></tt>) <strong>total</strong>
|
1692
|
+
|
1693
|
+
|
1694
|
+
|
1695
|
+
|
1696
|
+
|
1697
|
+
</h3><div class="docstring">
|
1698
|
+
<div class="discussion">
|
1699
|
+
|
1700
|
+
<p>Regresa el total</p>
|
1701
|
+
|
1702
|
+
|
1703
|
+
</div>
|
1704
|
+
</div>
|
1705
|
+
<div class="tags">
|
1706
|
+
|
1707
|
+
<p class="tag_title">Returns:</p>
|
1708
|
+
<ul class="return">
|
1709
|
+
|
1710
|
+
<li>
|
1711
|
+
|
1712
|
+
|
1713
|
+
<span class='type'>(<tt><span class='object_link'><a href="../Float.html" title="Float (class)">Float</a></span></tt>)</span>
|
1714
|
+
|
1715
|
+
|
1716
|
+
|
1717
|
+
—
|
1718
|
+
<div class='inline'>
|
1719
|
+
<p>El subtotal multiplicado por la tasa</p>
|
1720
|
+
</div>
|
1721
|
+
|
1722
|
+
</li>
|
1723
|
+
|
1724
|
+
</ul>
|
1725
|
+
|
1726
|
+
</div><table class="source_code">
|
1727
|
+
<tr>
|
1728
|
+
<td>
|
1729
|
+
<pre class="lines">
|
1730
|
+
|
1731
|
+
|
1732
|
+
85
|
1733
|
+
86
|
1734
|
+
87</pre>
|
1735
|
+
</td>
|
1736
|
+
<td>
|
1737
|
+
<pre class="code"><span class="info file"># File 'lib/comprobante.rb', line 85</span>
|
1738
|
+
|
1739
|
+
<span class='kw'>def</span> <span class='id identifier rubyid_total'>total</span>
|
1740
|
+
<span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subTotal'>subTotal</span><span class='op'>+</span><span class='lparen'>(</span><span class='kw'>self</span><span class='period'>.</span><span class='id identifier rubyid_subTotal'>subTotal</span><span class='op'>*</span><span class='ivar'>@opciones</span><span class='lbracket'>[</span><span class='symbol'>:tasa</span><span class='rbracket'>]</span><span class='rparen'>)</span>
|
1741
|
+
<span class='kw'>end</span></pre>
|
1742
|
+
</td>
|
1743
|
+
</tr>
|
1744
|
+
</table>
|
1745
|
+
</div>
|
1746
|
+
|
1747
|
+
</div>
|
1748
|
+
|
1749
|
+
</div>
|
1750
|
+
|
1751
|
+
<div id="footer">
|
1752
|
+
Generated on Wed Oct 30 20:47:07 2013 by
|
1753
|
+
<a href="http://yardoc.org" title="Yay! A Ruby Documentation Tool" target="_parent">yard</a>
|
1754
|
+
0.8.7.2 (ruby-2.0.0).
|
1755
|
+
</div>
|
1756
|
+
|
1757
|
+
</body>
|
1758
|
+
</html>
|