-
Notifications
You must be signed in to change notification settings - Fork 1
/
ChangeLog
796 lines (528 loc) · 18.1 KB
/
ChangeLog
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
753
754
755
756
757
758
759
760
761
762
763
764
765
766
767
768
769
770
771
772
773
774
775
776
777
778
779
780
781
782
783
784
785
786
787
788
789
790
791
792
793
794
795
796
2023-05-18 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m:
Use [interpretString: forField: forObject:] in update to parse input
for DBSFTypeWrappers, allows parsing for DateTime for now.
2023-05-18 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m: [interpretString: forField: forObject:]
new method that parses a string in a local format respeting the type
of the object describe and output it again in SF format.
2023-05-18 Riccardo Mottola <rm@gnu.org>
* DBSFTypeWrappers.m:
Fix and correctly parse and output SF yyyy-MM-dd'T'HH:mm:ss.000'Z'
format
2023-05-18 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m:
In case of nil value insert empty string.
2023-05-18 Riccardo Mottola <rm@gnu.org>
* DBSFTypeWrappers.h
* DBSFTypeWrappers.m:
Add stringValueSF method, to return value in expected SF format, differing from stringValue which may be type and locale dependent. for DateTime add parsing of yyyy-MM-DD hh:mm format with timezone and DST interpertation.
2021-09-24 Riccardo Mottola <rm@gnu.org>
* DBCSVReader.m:
Better check for separators and treat exceptions of unqualified emtpy
fields even in a qualified file.
* DBSoapCSV.m:
Insert a check if the number of values is less than the fields
(probable misparsing).
2021-04-21 Riccardo Mottola <rm@gnu.org>
* DBFileWriter.m:
Now that GNUstep supports getting a BOM for an empty string, simplify
the code which dind't even work. Also, take in account of the BOM
length and skip it when writing.
2021-04-17 Riccardo Mottola <rm@gnu.org>
* DBSObject.h
* DBSObject.m
Add getter for the DBSoap interface.
2021-04-17 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
* DBSoapCSV.h
* DBSoapCSV.m
Allow to set and use runAssignmentRules, init to NO.
2021-02-18 Riccardo Mottola <rm@gnu.org>
* DBSoap+Selecting.m: _query
Actually invoke correct query or queryAll method.
2020-08-28 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
* DBSoap.h
Remove http support, no longer supported by salesforce.com
2020-05-29 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
split extractQueryRecord from extractQueryRecords and start extracting all sub-objects into DBSObjects, not just the top-level.
2020-05-23 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m
Try to extract arrays which have a single element.
2020-05-22 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Unpack nested queries and extract list of SObjects.
2020-05-22 Riccardo Mottola <rm@gnu.org>
* DBFileWriter.h
* DBFileWriter.m
new formatSObject: method for formatting specific SObject complex object.
2020-02-12 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Initialize correctly dbSoap object with batch size.
2019-11-24 Riccardo Mottola <rm@gnu.org>
* DBSoap+Creating.m
* DBSoap+Updating.m
* DBSoap.h
* DBSoap.m
Provide means for applying assignment ruleson insert/update (currently
defaulted to yes)
2019-06-26 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Do not use autorelease
2019-06-19 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Fix autorelease issues inside the loop with Query Locator.
* DBSoap+Selecting.m
Clean up memory management of GWSService a little.
2019-06-18 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Correctly initialize create and update services.
2019-06-04 Riccardo Mottola <rm@gnu.org>
* DBSoap+Updating.m
* DBSoap+Selecting.m
* DBSoapCSV.m
* DBSoap+Deleting.m
* DBSoap+Creating.m
* DBSoap.h
* DBSoap.m
Instantiate GWSService each time it is needed, do not keep it persistent as an ivar.
2019-06-02 Riccardo Mottola <rm@gnu.org>
* DBRest.h
* DBRest.m
* DBSoap.h
* DBSoap.m
* DBSoapCSV.m
Store serviceURL as NSURL and not as a string anymore.
2019-06-02 Riccardo Mottola <rm@gnu.org>
* DBRest.h
* DBRest.m
First steps in REST API query support.
2019-05-28 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Remove unused set.
2018-07-23 Riccardo Mottola <rm@gnu.org>
* DBSoap+Deleting.m
Fix cycle exit condition!
* DBSoap+Updating.m
wrap result in a dictionary, to ease FileReader output.
2018-07-19 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
* DBSoap+Deleting.m
Undelete API.
2018-07-19 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
* DBSoap+Updating.m
implement getUpdated API.
2018-07-18 Riccardo Mottola <rm@gnu.org>
* DBSoap+Deleting.m
Fix memory error
2018-07-17 Riccardo Mottola <rm@gnu.org>
* DBSoap+Deleting.m
* DBSoap.h
* DBSoap.m
* DBSoapCSV.h
* DBSoapCSV.m
implement getDeleted API
2018-05-08 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Fix: use cloned connection for query execution.
2018-05-04 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.h
* DBSoapCSV.m
* DBSoap.h
* DBSoap.m
* DBSoap+Selecting.m
Implement retrieve call.
2018-04-23 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Use login.salesforce.com as endpoint.
2017-11-10 Riccardo Mottola <rm@gnu.org>
* DBSoap+Creating.m
Support nillable fields also in create.
2017-11-10 Riccardo Mottola <rm@gnu.org>
* DBSoap+Creating.m
Better exception handling.
2017-11-10 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
* DBSoap+Creating.m
* DBSoap+Deleting.m
* DBSoap+Updating.m
* DBSoap+Selecting.m
Factor out CRUD method to separate files in categoris: better readibility.
2017-11-09 Riccardo Mottola <rm@gnu.org>
* DBCSVReader.m
Don't choke with an empty file.
2017-11-03 Riccardo Mottola <rm@gnu.org>
* DBSFTypeWrappers.h
* DBSFTypeWrappers.m
* DBSoap.m
Simplify initializers and uniform to initWithSFString when parsing results.
2017-11-02 Riccardo Mottola <rm@gnu.org>
* DBSFTypeWrappers.h
* DBSFTypeWrappers.m
* DBSoap.m
Date and DateTime types.
2017-11-01 Riccardo Mottola <rm@gnu.org>
* DBSFTypeWrappers.h
* DBSFTypeWrappers.m
* DBSoap.m
* DBHTMLWriter.m
Handle Percentage.
2017-11-01 Riccardo Mottola <rm@gnu.org>
* DBSFTypeWrappers.h
* DBSFTypeWrappers.m
Implement missing class methods.
* DBSoap.m
Initialize DBSFDataTypes better.
2017-10-31 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
* DBSoap.h
Fix setting of enableFieldTypesDescribeForQuery and add accessor.
2017-10-30 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Extract object and result parsing into adjustFormatForField and extractQueryRecords
2017-10-30 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m
* DBHTMLWriter.m
Don't choke on arrays of objects coming from nested queries.
2017-10-23 Riccardo Mottola <rm@gnu.org>
* DBFileWriter.m
Expand compound address fields.
2017-10-22 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (adjustFormatForField)
First check for known datatypes, then expand Dictionaries.
Addresses are complex datatypes and we keep them together.
2017-10-22 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
Accessors for object describe cache and setting.
* DBSoapCSV.m
Carry over object cache.
2017-10-22 Riccardo Mottola <rm@gnu.org>
* DBFileWriter.m (formatComplexObject:)
Skip Id field only if it is an empty string, not otherwise.
* DBSObject.m (description)
Output type too.
* DBSoap.m (adjustFormatForField)
Handle complex objects and distiguish between SF objects and special types like Addresses.
2017-10-18 Riccardo Mottola <rm@gnu.org>
* DBFileWriter.m (formatComplexObject:)
Cleanup and optimize nested Field Name concatenation.
2017-10-17 Riccardo Mottola <rm@gnu.org>
* DBSFTypeWrappers.h
* DBSFTypeWrappers.m
* DBFileWriter.m
* DBCSVWriter.m
* DBHTMLWriter.m
New FileType objects to store and wrap specific data types and be able
to easily identify them after (NSNumber is not flexible for Bool and
other types are needed). Adapt all Writers.
2017-10-12 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
retain/autorelease queryLocator so that it remains usable in the next
cycle.
Retain/Release the result record to make it survive the describe cycle.
2017-10-11 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (_queryMore)
Update to type enhacenemnts implemented in query
2017-10-11 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (_query)
Format Objects after describes
2017-10-10 Riccardo Mottola <rm@gnu.org>
* DBHTMLWriter.m
Output Numbers in General format.
2017-10-09 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Set logger on DBSoap
2017-10-05 Riccardo Mottola <rm@gnu.org>
* DBHTMLWriter.m
Some Excel specific HTML tags for format and linebreaks
2017-10-05 Riccardo Mottola <rm@gnu.org>
* DBHTMLWriter.h
* DBHTMLWriter.m
Start differentiating between HTML and pseudo-XLS
2017-10-05 Riccardo Mottola <rm@gnu.org>
* DBHTMLWriter.h
* DBHTMLWriter.m
* DBCSVWriter.h
* DBCSVWriter.m
Provide file type constants.
2017-10-03 Riccardo Mottola <rm@gnu.org>
* DBHTMLWriter.m
Handle some HTML escaping.
2017-10-03 Riccardo Mottola <rm@gnu.org>
* DBHTMLWriter.m
Handle also unordered writing in HTML output.
2017-10-03 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m
* DBFileWriter.m
* DBHTMLWriter.m
Initialize from superclass properly
2017-10-02 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.h
* DBSoapCSV.m
writeStart and writeEnd for each writer.
2017-10-02 Riccardo Mottola <rm@gnu.org>
* DBFileWriter.h
* DBFileWriter.m
* DBCSVWriter.m
* DBHTMLWriter.m
put also formatComplexObject in superclass
2017-09-25 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m
* DBFileWriter.h
* DBFileWriter.m
* DBHTMLWriter.m
put setFieldNames in superclass
2017-09-25 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.h
* DBCSVWriter.m
* DBFileWriter.h
* DBFileWriter.m
* DBHTMLWriter.h
* DBHTMLWriter.m
put setStringEncoding in superclass
2017-09-25 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.h
* DBCSVWriter.m
* DBFileWriter.h
* DBFileWriter.m
* DBHTMLWriter.h
* DBHTMLWriter.m
put writeDataSet in superclass, as well as encoding info.
2017-09-25 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.h
* DBCSVWriter.m
* DBFileWriter.h
* DBFileWriter.m
Put writeOrder in super class
2017-09-25 Riccardo Mottola <rm@gnu.org>
* DBHTMLWriter.m
Better header/footer for HTML.
2017-09-21 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
* DBSObject.m
Make SOQL length defineable
2017-09-20 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.h
* DBCSVWriter.m
* DBHTMLWriter.h
* DBHTMLWriter.m
Factor out common File Writer class
2017-04-26 Riccardo Mottola <rm@gnu.org>
* DBSObject.m
Minor change to NSUInteger
2016-11-23 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m (queryIdentify:)
Release object array always, even if it was empty.
2016-11-23 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Simplify code by using addObjectsFromArray.
2016-11-22 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m (queryIdentify:)
Adjust the identification loop to the query loop when it is not MAX, furthermore make result objects local to loop.
2016-10-18 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.h
* DBCSVWriter.m
* DBHTMLWriter.h
* DBHTMLWriter.m
Provide common writeStart and writeEnd method to write out the begin and end of a block, clean and complete table header ad rows generation.
2016-10-18 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Use the property writeFieldsOrdered directly and do not try to reset it.
2016-06-27 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Use GSWS constants instead of hard-coded strings.
2016-06-24 Riccardo Mottola <rm@gnu.org>
* DBSObject.m (_update)
If value of a field is empty, consider it NULL and issue a fieldToNull
2016-06-13 Riccardo Mottola <rm@gnu.org>
* DBSObject.h
* DBSObject.m
Implement storeValuesForFields to update several fields of a single object.
2016-06-13 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
Bump API version to 37 and increase SOQL size limit 9000->18000 retaining some safety compared to 20000.
2016-05-27 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (_login)
Actually read passwordExpired!
2016-04-27 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Detect count() in query and complete progress.
2016-04-19 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
* DBSoap.h
Getters for batch size.
* DBSoapCSV.m
Copy batch size when cloning DBSoap instance.
2016-04-11 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (_create)
Handle multiple errors more gracefully.
2016-04-04 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (_update)
Handle multiple errors more gracefully.
2016-03-16 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Fix correct result return type from query for insert and delete.
2016-02-16 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Look for ( when looking for aggregate operators only before from, ignoring thus IN(...)
2016-02-16 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Look for 'LIMIT ' including space to reduce risk of matching a field.
2015-11-23 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (fieldsByParsingQuery)
Detect nested query and return unsupported exception.
2015-11-19 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Mark first batch run as done only when it actually did run (object conut > 0)
2015-10-20 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.h
* DBCSVWriter.m
DBCSVLineBreakHandling : filter line breaks in strings
2015-09-12 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (queryMore)
Check if returned object is an array: do not use size to determine if a single object is returned, since size refers to the size of the whole query.
2015-09-12 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
in _query check size against declared size.
2015-09-07 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
use upBatchSize for delete batch size
2015-07-02 Riccardo Mottola <rm@gnu.org>
* DBCSVReader.m
More extensive rewrite to handle qualifiers and escaped qualifiers
2015-06-25 Riccardo Mottola <rm@gnu.org>
* DBCSVReader.m
Try to properly parse double-quoted quote characters
2015-05-15 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m (query)
Use a loop-local autorelease pool and drain it.
2015-04-30 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m (queryIdentify)
Use a loop-local autorelease pool and drain it.
2015-04-29 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m (queryIdentify)
Do not batch in a mutable array emptied each time, but work on NSArray as subarray and release it at each cycle
2015-04-28 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Increment progress by te current batch size, do not set an absolute value.
2015-04-24 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
QueryIdentify: split query array in chunks, to limit maximum memory consumption. The batch size is fixed for now.
2015-04-23 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (_delete)
Stop if the associated progress monitor tells to.
* DBSoapCSV.m
Query: if interrupted, do not set progress to 100% and set the status to interrupted.
2015-04-15 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (_queryIdentify)
Stop if the associated progress monitor tells so.
2015-04-15 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
Instantiate a private service class for create, query, indentify, etc. allowing parallel use.
2015-04-15 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (login:)
Protect login with lock and busy count
2015-04-15 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Catch exceptions in all locked methods and unlock and decrease busy count.
2015-04-14 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
Service convenience method, session details accessors.
* DBSoapCSV.m (query:)
Instantiate a private GWSService
2015-04-14 Riccardo Mottola <rm@gnu.org>
* DBProgressProtocol.h
Methods for telling the associate process to stop.
* DBSoapCSV.m (query:)
Interrupt if the progress monitor says so.
2015-04-14 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
Provide isBusy to determine if any of the queries are running, protect all public APIs with a lock and call the equivalent internal unprotected ones.
2015-01-21 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (identifyObjectById) Use keyPrefix accessor, do not
compare against nil objects.
2015-01-20 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (queryIdentify)
Throw exception instead of just logging if batch size is specified win an incompatible query.
2014-10-10 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
Add class methods for returning login URLs.
2014-10-10 Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
Add sending query size in query/queryMore
2014-09-09 Riccardo Mottola <rm@gnu.org>
* DBCSVReader.h
* DBCSVReader.m
Fix header parsing further, remove redundant method.
2014-09-08 Riccardo Mottola <rm@gnu.org>
* DBCSVReader.h
* DBCSVReader.m
Refactor so that header parsing is possible after changing qualifier and separator strings.
2014-08-29 Riccardo Mottola <rm@gnu.org>
* DBCSVReader.h
* DBCSVReader.m
* DBCSVWriter.h
* DBCSVWriter.m
Add setters for Qualifiers and Separators.
2014-06-27 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (create, update)
Catch time out GWSCoderError and throw an exception.
2014-06-26 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Escape ' in values used by queryIdentify to identify.
2014-06-07 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Fix handling of complex fied in non-aggregate queries.
2014-06-07 Riccardo Mottola <rm@gnu.org>
* DBSoap.m (queryIdentify)
Support also GROUP BY in options in queryIdentify.
2014-06-06 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Rewrote query parser to match generic aggregate functions, not just count.
2014-06-05 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m
Primitive NSCalendarDate object handling (only description for now)
2014-06-03 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Try to parse count() and count(id)
2014-05-19 Riccardo Mottola <rm@gnu.org>
* DBSoap.m
Parse alias fields in query.
2014-05-16 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m
Fix writing of ordered header, in case of sub-objects.
2014-05-13 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.h
* DBCSVWriter.m
* DBSoapCSV.m
add writeOrdered accessor and use it.
2014-05-13 Riccardo Mottola <rm@gnu.org>
* DBSoapCSV.m
* DBCSVWriter.h
* DBCSVWriter.m
New core that analyzes fieldnames and is capable of extracting them in given order.
2014-05-12 Riccardo Mottola <rm@gnu.org>
* DBCSVWriter.m
Fix warning and perhaps wrong +bomLength
* DBSoap.m
Fix parsing of query which has only one field, make 10.4 compatible.
Riccardo Mottola <rm@gnu.org>
* DBSoap.h
* DBSoap.m
* DBSoapCSV.m
SOQL query parser to extract fields.