forked from truongminhthang/CodeSnippets
-
Notifications
You must be signed in to change notification settings - Fork 0
/
9D11FADD-3AD2-4A17-A1B3-853002357DE8.codesnippet
57 lines (49 loc) · 1.83 KB
/
9D11FADD-3AD2-4A17-A1B3-853002357DE8.codesnippet
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
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDECodeSnippetCompletionScopes</key>
<array>
<string>CodeBlock</string>
</array>
<key>IDECodeSnippetContents</key>
<string>func getSum(forKeyPath: String) -> Double? {
let expressionName = "sum"
let fetchRequest = NSFetchRequest(entityName: entityName)
fetchRequest.resultType = .DictionaryResultType
//2
let sumExpressionDesc = NSExpressionDescription()
sumExpressionDesc.name = expressionName
//3
sumExpressionDesc.expression =
NSExpression(forFunction: "sum:",
arguments:[NSExpression(forKeyPath: forKeyPath)])
sumExpressionDesc.expressionResultType =
.DoubleAttributeType
//4
fetchRequest.propertiesToFetch = [sumExpressionDesc]
//5
do {
let moc = AppDelegate.shareInstance.dataController.context
let results = try moc.executeFetchRequest(fetchRequest) as! [NSDictionary]
let resultDict = results.first!
let numDeals = resultDict[expressionName] as! Double
return numDeals
} catch let error as NSError {
print("Could not fetch \(error), \(error.userInfo)")
}
return nil
}
</string>
<key>IDECodeSnippetIdentifier</key>
<string>9D11FADD-3AD2-4A17-A1B3-853002357DE8</string>
<key>IDECodeSnippetLanguage</key>
<string>Xcode.SourceCodeLanguage.Swift</string>
<key>IDECodeSnippetTitle</key>
<string>Swift: CoreData / get sumif</string>
<key>IDECodeSnippetUserSnippet</key>
<true/>
<key>IDECodeSnippetVersion</key>
<integer>2</integer>
</dict>
</plist>