class

SaveReport

Inherits Report::SaveOperation < Avram::SaveOperation < Avram::AddColumnAttributes < Avram::Upsert < Avram::InheritColumnAttributes < Avram::MarkAsFailed < Avram::NestedSaveOperation < Avram::DatabaseValidations < Avram::Callbacks < Avram::NeedyInitializerAndSaveMethods < Avram::ParamKeyOverride < Avram::OperationErrors < Avram::Validations < Avram::DefineAttribute < Reference < Object

Constants

ATTRIBUTES = [] of Nil
COLUMN_ATTRIBUTES = [{name: id, type: Int64, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: created_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: updated_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: target_total_count, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: processed_total_count, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: qualified_total_count, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_date, type: String, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_year_num, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_month_num, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_week_num, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: process_line_id, type: ProcessLine::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: workshop_id, type: Workshop::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: manufactory_id, type: Manufactory::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: company_id, type: Company::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: id, type: Int64, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: created_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: updated_at, type: Time, nilable: false, autogenerated: true, value: nil, serialized: false}, {name: target_total_count, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: processed_total_count, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: qualified_total_count, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_date, type: String, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_year_num, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_month_num, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: report_week_num, type: Int32, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: process_line_id, type: ProcessLine::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: workshop_id, type: Workshop::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: manufactory_id, type: Manufactory::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}, {name: company_id, type: Company::PrimaryKeyType, nilable: false, autogenerated: false, value: nil, serialized: false}] of Nil
FOREIGN_KEY = "report_id"
OPERATION_NEEDS = [] of Nil

Constructors

new(record : T, params : Avram::Paramable, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

new(params : Avram::Paramable, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

new(record : T, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

new(id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

Class methods

create(params, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, &)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

create(id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, &)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

create(params : Hash, **named_args, &)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

create!(params, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

create!(id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

create!(params : Hash, **named_args)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

find_existing_unique_record(operation) : T | Nil
Source
update(record : T, with params, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, &)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

update(record : T, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, &)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

update(record : T, params : Hash, **named_args, &)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

update!(record : T, with params, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

update!(record : T, id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

update!(record : T, params : Hash, **named_args)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

upsert(*args, **named_args, &)
Source
upsert!(*args, **named_args) : T
Source

Instance methods

before_save
Source
set_attributes(id : Int64 | Avram::Nothing = Avram::Nothing.new, created_at : Time | Avram::Nothing = Avram::Nothing.new, updated_at : Time | Avram::Nothing = Avram::Nothing.new, target_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, processed_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, qualified_total_count : Int32 | Avram::Nothing = Avram::Nothing.new, report_date : String | Avram::Nothing = Avram::Nothing.new, report_year_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_month_num : Int32 | Avram::Nothing = Avram::Nothing.new, report_week_num : Int32 | Avram::Nothing = Avram::Nothing.new, process_line_id : ProcessLine::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, workshop_id : Workshop::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, manufactory_id : Manufactory::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new, company_id : Company::PrimaryKeyType | Avram::Nothing = Avram::Nothing.new)

@type is not correct in this method, but is in the macro we call below That is why this extrac macro was extracted. We need @type to get the attributes for this SaveOperation

Macros

param_key(key)