Экспорт основных данных в csv через почтовый компоновщик с использованием CHCSVParser (автор Dave DeLong)

Я экспортирую данные ядра в csv через почтовый компоновщик, используя CHCSVParser (Дэйв Делонг), но проблема в том, что он принимает имя таблицы данных ядра вместо значений строк.

Кроме того, я хочу, чтобы они были в определенном порядке, например, «Канализация №», «Люк 1», «Люк 2»

Вот код, который я использую:

// извлечение данных из основных данных

NSManagedObjectContext *moc = [self managedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription
                                          entityForName:@"Input_Details" inManagedObjectContext:moc];
NSFetchRequest *request = [[NSFetchRequest alloc] init];


request.predicate = [NSPredicate predicateWithFormat:@"rs_Input_project.name = %@", self.projectObject.name];


[request setEntity:entityDescription];
request.resultType = NSDictionaryResultType;

NSSortDescriptor *sortDescriptor = [[NSSortDescriptor alloc] initWithKey:@"sewer_No" ascending:YES];
[request setSortDescriptors:@[sortDescriptor]];

NSError *error;

NSArray *fetchedObjects = [moc executeFetchRequest:request error:&error];



 //creating a csv CHCSVWriter
NSOutputStream *output = [NSOutputStream outputStreamToMemory];
CHCSVWriter *writer = [[CHCSVWriter alloc] initWithOutputStream:output encoding:NSUTF8StringEncoding delimiter:','];

for (id object in fetchedObjects)
{
    if ([object conformsToProtocol:@protocol(NSFastEnumeration)])
    {
        [writer writeLineOfFields:object];

    }
}

[writer closeStream];


NSData *buffer = [output propertyForKey:NSStreamDataWrittenToMemoryStreamKey];

NSString *string = [[NSString alloc] initWithData:buffer encoding:NSUTF8StringEncoding];

NSLog(@"Length of Buffer:%d Error:%@",[buffer length],[error localizedDescription]);

if ( [MFMailComposeViewController canSendMail] )
{


    MFMailComposeViewController *mailComposer = [[MFMailComposeViewController alloc] init];
    mailComposer.mailComposeDelegate = self;

    NSData *myData = [string dataUsingEncoding:NSUTF8StringEncoding];
    NSLog(@"myData csv:%@",myData);
     NSLog(@"string csv:%@",string);

// Fill out the email body text
    NSString *emailBody = @"Sewer_Output";
    [mailComposer setMessageBody:emailBody isHTML:NO];

    //attaching the data and naming it Sewer_Output
    [mailComposer addAttachmentData:myData  mimeType:@"text/cvs" fileName:@"Sewer_Output.csv"];

[self presentModalViewController:mailComposer animated:YES];
}

Ответы на вопрос(2)

Ваш ответ на вопрос