C# Class Excavator.CSV.CSVComponent

Partial of CSVComponent that holds the People import methods
Show file Open project: NewSpring/Excavator

Protected Properties

Property Type Description
AnonymousGiverAliasId int?
HouseholdIdAttribute Rock.Web.Cache.AttributeCache
ImportPersonAliasId int?
ImportedBatches int?>.Dictionary
ImportedPeopleKeys List
IndividualIdAttribute Rock.Web.Cache.AttributeCache
IntegerFieldTypeId int
TextFieldTypeId int

Private Properties

Property Type Description
AddAccount FinancialAccount
AddPersonAttribute void
CreateFamilyGroup Group
FileIsKnown bool
FileTypeMatches bool
GetFileRootName string
GetRecordTypeFromFilename CSVInstance.RockDataType
LoadExistingData bool
LoadFamily int
LoadIndividuals int
LoadMetrics int
MapBatch int
MapContribution int
MapPledge int
SaveContributions void
SaveFamilies void
SaveFinancialBatches void
SaveIndividuals void
SaveMetrics void
SavePledges void

Public Methods

Method Description
DetachAllInContext ( RockContext context ) : void

Detach all entity objects from the change tracker that is associated with the given RockContext. Any entity that is stored (for example in an Imported... variable) should be detached before the function ends. If it is explicitely attached and then not detached then when it is attached to another context an exception "An entity object cannot be referenced by multiple instances of IEntityChangeTracker" occurs. Taken from: http://stackoverflow.com/questions/2465933/how-to-clean-up-an-entity-framework-object-context

LoadSchema ( string fileName ) : bool

Loads the database for this instance. may be called multiple times, if uploading multiple CSV files.

TransformData ( string>.Dictionary settings ) : int

Previews the data. Overrides base class because we have potential for more than one imported file

Transforms the data from the dataset.

Protected Methods

Method Description
GetPersonKeys ( int individualId = null ) : PersonKeys

Gets the person keys.

LoadPersonKeys ( RockContext lookupContext ) : void

Private Methods

Method Description
AddAccount ( RockContext lookupContext, string fundName, string accountGL, int fundCampusId, int parentAccountId, bool isActive ) : FinancialAccount

Adds the account.

AddPersonAttribute ( Rock.Web.Cache.AttributeCache attribute, Person person, string attributeValue ) : void

Adds the person attribute.

CreateFamilyGroup ( string rowFamilyName, string rowFamilyKey ) : Group

Creates the family group.

FileIsKnown ( string fileName ) : bool

Checks if the file matches a known format.

FileTypeMatches ( CSVInstance filetype, string name ) : bool

Checks if the file matches a known format.

GetFileRootName ( string fileName ) : string

Gets the name of the file without the extension.

GetRecordTypeFromFilename ( string filename ) : CSVInstance.RockDataType

Gets the record type based on the filename.

LoadExistingData ( string importUser ) : bool

Checks the database for existing import data. returns false if an error occurred

LoadFamily ( CSVInstance csvData ) : int

Loads the family data.

LoadIndividuals ( CSVInstance csvData ) : int

Loads the individual data.

LoadMetrics ( CSVInstance csvData ) : int

Loads the family data.

MapBatch ( CSVInstance csvData ) : int

Maps the batch data.

MapContribution ( CSVInstance csvData ) : int

Maps the contribution.

MapPledge ( CSVInstance csvData ) : int

Maps the pledge.

SaveContributions ( List newTransactions ) : void

Saves the contributions.

SaveFamilies ( List newFamilyList, string>.Dictionary newGroupLocations ) : void

Saves all family changes.

SaveFinancialBatches ( List newBatches ) : void

Saves the financial batches.

SaveIndividuals ( List newFamilyList, List visitorList = null, List newNoteList = null ) : void

Saves the individuals.

SaveMetrics ( List metricValues ) : void

Saves all the metric values.

SavePledges ( List newPledges ) : void

Saves the pledges.

Method Details

DetachAllInContext() public static method

Detach all entity objects from the change tracker that is associated with the given RockContext. Any entity that is stored (for example in an Imported... variable) should be detached before the function ends. If it is explicitely attached and then not detached then when it is attached to another context an exception "An entity object cannot be referenced by multiple instances of IEntityChangeTracker" occurs. Taken from: http://stackoverflow.com/questions/2465933/how-to-clean-up-an-entity-framework-object-context
public static DetachAllInContext ( RockContext context ) : void
context Rock.Data.RockContext
return void

GetPersonKeys() protected static method

Gets the person keys.
protected static GetPersonKeys ( int individualId = null ) : PersonKeys
individualId int The individual identifier.
return PersonKeys

LoadPersonKeys() protected static method

protected static LoadPersonKeys ( RockContext lookupContext ) : void
lookupContext Rock.Data.RockContext
return void

LoadSchema() public method

Loads the database for this instance. may be called multiple times, if uploading multiple CSV files.
public LoadSchema ( string fileName ) : bool
fileName string
return bool

TransformData() public method

Previews the data. Overrides base class because we have potential for more than one imported file Transforms the data from the dataset.
public TransformData ( string>.Dictionary settings ) : int
settings string>.Dictionary
return int

Property Details

AnonymousGiverAliasId protected static property

The anonymous giver record
protected static int? AnonymousGiverAliasId
return int?

HouseholdIdAttribute protected static property

protected static AttributeCache,Rock.Web.Cache HouseholdIdAttribute
return Rock.Web.Cache.AttributeCache

ImportPersonAliasId protected static property

The person assigned to do the import
protected static int? ImportPersonAliasId
return int?

ImportedBatches protected static property

All imported batches. Used in Batches & Contributions
protected static Dictionary ImportedBatches
return int?>.Dictionary

ImportedPeopleKeys protected static property

All the people keys who've been imported
protected static List ImportedPeopleKeys
return List

IndividualIdAttribute protected static property

protected static AttributeCache,Rock.Web.Cache IndividualIdAttribute
return Rock.Web.Cache.AttributeCache

IntegerFieldTypeId protected static property

protected static int IntegerFieldTypeId
return int

TextFieldTypeId protected static property

protected static int TextFieldTypeId
return int