database - nsrivastav/iPhone GitHub Wiki

+(NSMutableArray*)get_strip_detail_slave_table:(int)strip_no{ NSArray *arrDocPath = NSSearchPathForDirectoriesInDomains(NSDocumentDirectory, NSUserDomainMask, YES); NSString *strDestPath = [NSString stringWithFormat:@"%@/samplepillbox1.sqlite",[arrDocPath objectAtIndex:0]];

if (sqlite3_threadsafe() > 0) {
    int retCode = sqlite3_config(SQLITE_CONFIG_SERIALIZED);
    if (retCode == SQLITE_OK) {
        NSLog(@"Can now use sqlite on multiple threads, using the same connection");
    } else {
        NSLog(@"setting sqlite thread safe mode to serialized failed!!! return code: %d", retCode);
    }
} else {
    NSLog(@"Your SQLite database is not compiled to be threadsafe.");
}

NSLog(@" About to start entering in database");
NSMutableArray *strip1_detail = [[NSMutableArray alloc]init];
int p= [strip1_detail count];
NSLog(@"the array size in database before is %d",p);

NSLog(@" The strip no is %d", strip_no);
sqlite3 *db;

NSLog(@"The database path is %@", strDestPath);

if(sqlite3_open([strDestPath UTF8String], &db)==SQLITE_OK) { NSLog(@" About to start entering in sqlite ok"); NSString *query = [NSString stringWithFormat:@" select * from maintable_slave where strip_no = %d",strip_no]; sqlite3_stmt *studentStmt;

	if(sqlite3_prepare_v2(db, [query UTF8String], -1, &studentStmt, 0)==SQLITE_OK)
	{
		while (sqlite3_step(studentStmt)==SQLITE_ROW) {
			
			NSLog(@" About to start entering in while");
			
			NSString *din = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 0)];
		   	NSString *brandname = [NSString stringWithUTF8String: (char *)sqlite3_column_text(studentStmt, 1)];
			NSString *fullname = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 2)];
			NSString *strength = [NSString stringWithUTF8String: (char *)sqlite3_column_text(studentStmt, 3)];
			NSString *medicationtype =[NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt,4 )];
			NSString *presciptionid= [NSString stringWithUTF8String:(char *)sqlite3_column_text(studentStmt, 5)];
			//NSString *next_dosage = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 6)];
			int required_dosage = sqlite3_column_int(studentStmt, 7);
		//	NSString *schedule =[NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 8)];
			//NSString *direction = [NSString stringWithUTF8String: sqlite3_column_text(studentStmt, 9)];
			NSString *doctor_name =  [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 9)];
			NSString *doctor_address = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt,10)];
		    NSString *doctor_city = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 11)];
			NSString *doctor_state = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 12)];
			NSString *doctor_phone = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 13)];
			NSString *doctor_fax = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 14)];
			NSString *doctor_email =  [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 15)];
			NSString *pharmacy_name =  [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 16)];
			NSString *pharmacy_address = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 17)];
			NSString *pharmacy_city = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 18)];
			NSString *pharmacy_state = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 19)];
			NSString *pharmacy_phone = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 20)];
			NSString *pharmacy_fax = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 21)];
			NSString *pharmacy_email =  [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 22)];
			NSString *strip_status = [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 23)];
			NSString *start_date =  [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 27)];
		    NSString *end_date =  [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 28)];
			int amount_in_storage = sqlite3_column_int(studentStmt, 25);
			int skipped_dosage = sqlite3_column_int(studentStmt, 32);
		NSString *next_dosage =  [NSString stringWithUTF8String:(char *) sqlite3_column_text(studentStmt, 30)];
			
						
			int value = [din intValue];
			
			
			
			
			Strip_items *si = [[Strip_items alloc]init];
			si.Din = [NSString stringWithFormat:@"%d",value];
			
			si.BrandName = brandname;
			si.FullName = fullname;
			si.Strength = strength;					
			si.MedicationType = medicationtype;
			//si.amount_strength = amount_strength;
			si.PresciptionID = presciptionid; 
		//	si.next_dosage = next_dosage;
			si.start_local = next_dosage;
			si.required_dosage = [NSString stringWithFormat:@"%d",required_dosage];
		//	si.direction =direction;
			si.doctor_name = doctor_name;
			si.doctor_address = doctor_address;
			si.doctor_city = doctor_city;
			si.doctor_state = doctor_state;
			si.doctor_phone = doctor_phone;
			si.doctor_fax = doctor_fax;
			si.doctor_email = doctor_email;
			si.pharmacy_name = pharmacy_name;
			si.pharmacy_address = pharmacy_address;
			si.pharmacy_city = pharmacy_city;
			si.pharmacy_state = pharmacy_state;
			si.pharmacy_phone = pharmacy_phone;
			si.pharmacy_fax = pharmacy_fax;
			si.pharmacy_email = pharmacy_email;
			si.strip_status = strip_status;
			si.amount_in_storage = amount_in_storage;
			si.skipped_dosage = skipped_dosage;
			si.start_date= start_date;
			si.end_date=end_date;
			
			
				
						
			
			
			
			[strip1_detail addObject:si];
            
            [si release];
            
            int p= [strip1_detail count];
            NSLog(@"the array size in database is %d",p);
		}
		sqlite3_finalize(studentStmt);
	}
}

else { NSLog(@"Database is closed"); } return strip1_detail;

[strip1_detail release];
sqlite3_close(db);

}