automatic accounting - removing deprecacy/legacy
This commit is contained in:
2
client
2
client
Submodule client updated: 087f2afaa3...1abb27eecc
@@ -181,7 +181,7 @@ message JournalLine {
|
|||||||
string source_table_name = 10;
|
string source_table_name = 10;
|
||||||
int64 source_record_id = 11;
|
int64 source_record_id = 11;
|
||||||
int64 source_row_revision = 12;
|
int64 source_row_revision = 12;
|
||||||
int64 posting_script_id = 13;
|
reserved 13;
|
||||||
}
|
}
|
||||||
|
|
||||||
message Journal {
|
message Journal {
|
||||||
|
|||||||
@@ -170,6 +170,8 @@ message ColumnDefinition {
|
|||||||
// PHONE (international or national phone number; generates extension/type/country/calling-code companions)
|
// PHONE (international or national phone number; generates extension/type/country/calling-code companions)
|
||||||
// TIME (timezone-free time of day)
|
// TIME (timezone-free time of day)
|
||||||
// MONEY (= unconstrained NUMERIC; currency comes from the table)
|
// MONEY (= unconstrained NUMERIC; currency comes from the table)
|
||||||
|
// ACCOUNTING (creates the schema-managed name, debit, and credit columns;
|
||||||
|
// one stored row contributes one line to the profile journal)
|
||||||
// INT
|
// INT
|
||||||
// BIGINT
|
// BIGINT
|
||||||
// DATE
|
// DATE
|
||||||
|
|||||||
@@ -172,14 +172,14 @@ message StoredTableScript {
|
|||||||
}
|
}
|
||||||
|
|
||||||
message ScriptDependency {
|
message ScriptDependency {
|
||||||
|
reserved 4;
|
||||||
|
|
||||||
// Logical table name referenced by the script.
|
// Logical table name referenced by the script.
|
||||||
string target_table = 1;
|
string target_table = 1;
|
||||||
// Normalized dependency kind, such as column_access or related_aggregate.
|
// Normalized dependency kind, such as column_access or related_aggregate.
|
||||||
string dependency_type = 2;
|
string dependency_type = 2;
|
||||||
// Logical column name. Empty for aggregates that operate on rows only.
|
// Logical column name. Empty for aggregates that operate on rows only.
|
||||||
string column = 3;
|
string column = 3;
|
||||||
// Deprecated legacy field. Raw SQL dependencies are no longer produced.
|
|
||||||
string query_fragment = 4;
|
|
||||||
// Aggregate operation name, such as sum, count_rows, or exists; empty for
|
// Aggregate operation name, such as sum, count_rows, or exists; empty for
|
||||||
// column_access dependencies.
|
// column_access dependencies.
|
||||||
string operation = 5;
|
string operation = 5;
|
||||||
|
|||||||
@@ -121,11 +121,7 @@ message PostTableDataRequest {
|
|||||||
// - Some application-specific validations may apply (e.g., max length for
|
// - Some application-specific validations may apply (e.g., max length for
|
||||||
// certain fields like "telefon")
|
// certain fields like "telefon")
|
||||||
map<string, google.protobuf.Value> data = 3;
|
map<string, google.protobuf.Value> data = 3;
|
||||||
|
reserved 4;
|
||||||
// Optional. Existing journal that receives the posting generated for this row.
|
|
||||||
// Required when the table has an active after-insert posting script and rejected
|
|
||||||
// when the table has no active posting script.
|
|
||||||
optional int64 journal_id = 4;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Insert response.
|
// Insert response.
|
||||||
@@ -150,9 +146,7 @@ message PostTableDataResponse {
|
|||||||
message PostTableDataBulkRow {
|
message PostTableDataBulkRow {
|
||||||
// Required. Same data payload as PostTableDataRequest.data.
|
// Required. Same data payload as PostTableDataRequest.data.
|
||||||
map<string, google.protobuf.Value> data = 1;
|
map<string, google.protobuf.Value> data = 1;
|
||||||
|
reserved 2;
|
||||||
// Optional. Existing journal that receives the posting generated for this row.
|
|
||||||
optional int64 journal_id = 2;
|
|
||||||
}
|
}
|
||||||
|
|
||||||
// Bulk insert request.
|
// Bulk insert request.
|
||||||
|
|||||||
Binary file not shown.
@@ -202,8 +202,6 @@ pub struct JournalLine {
|
|||||||
pub source_record_id: i64,
|
pub source_record_id: i64,
|
||||||
#[prost(int64, tag = "12")]
|
#[prost(int64, tag = "12")]
|
||||||
pub source_row_revision: i64,
|
pub source_row_revision: i64,
|
||||||
#[prost(int64, tag = "13")]
|
|
||||||
pub posting_script_id: i64,
|
|
||||||
}
|
}
|
||||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||||
pub struct Journal {
|
pub struct Journal {
|
||||||
|
|||||||
@@ -141,6 +141,8 @@ pub struct ColumnDefinition {
|
|||||||
/// PHONE (international or national phone number; generates extension/type/country/calling-code companions)
|
/// PHONE (international or national phone number; generates extension/type/country/calling-code companions)
|
||||||
/// TIME (timezone-free time of day)
|
/// TIME (timezone-free time of day)
|
||||||
/// MONEY (= unconstrained NUMERIC; currency comes from the table)
|
/// MONEY (= unconstrained NUMERIC; currency comes from the table)
|
||||||
|
/// ACCOUNTING (creates the schema-managed name, debit, and credit columns;
|
||||||
|
/// one stored row contributes one line to the profile journal)
|
||||||
/// INT
|
/// INT
|
||||||
/// BIGINT
|
/// BIGINT
|
||||||
/// DATE
|
/// DATE
|
||||||
|
|||||||
@@ -123,9 +123,6 @@ pub struct ScriptDependency {
|
|||||||
/// Logical column name. Empty for aggregates that operate on rows only.
|
/// Logical column name. Empty for aggregates that operate on rows only.
|
||||||
#[prost(string, tag = "3")]
|
#[prost(string, tag = "3")]
|
||||||
pub column: ::prost::alloc::string::String,
|
pub column: ::prost::alloc::string::String,
|
||||||
/// Deprecated legacy field. Raw SQL dependencies are no longer produced.
|
|
||||||
#[prost(string, tag = "4")]
|
|
||||||
pub query_fragment: ::prost::alloc::string::String,
|
|
||||||
/// Aggregate operation name, such as sum, count_rows, or exists; empty for
|
/// Aggregate operation name, such as sum, count_rows, or exists; empty for
|
||||||
/// column_access dependencies.
|
/// column_access dependencies.
|
||||||
#[prost(string, tag = "5")]
|
#[prost(string, tag = "5")]
|
||||||
|
|||||||
@@ -45,11 +45,6 @@ pub struct PostTableDataRequest {
|
|||||||
::prost::alloc::string::String,
|
::prost::alloc::string::String,
|
||||||
::prost_types::Value,
|
::prost_types::Value,
|
||||||
>,
|
>,
|
||||||
/// Optional. Existing journal that receives the posting generated for this row.
|
|
||||||
/// Required when the table has an active after-insert posting script and rejected
|
|
||||||
/// when the table has no active posting script.
|
|
||||||
#[prost(int64, optional, tag = "4")]
|
|
||||||
pub journal_id: ::core::option::Option<i64>,
|
|
||||||
}
|
}
|
||||||
/// Insert response.
|
/// Insert response.
|
||||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||||
@@ -79,9 +74,6 @@ pub struct PostTableDataBulkRow {
|
|||||||
::prost::alloc::string::String,
|
::prost::alloc::string::String,
|
||||||
::prost_types::Value,
|
::prost_types::Value,
|
||||||
>,
|
>,
|
||||||
/// Optional. Existing journal that receives the posting generated for this row.
|
|
||||||
#[prost(int64, optional, tag = "2")]
|
|
||||||
pub journal_id: ::core::option::Option<i64>,
|
|
||||||
}
|
}
|
||||||
/// Bulk insert request.
|
/// Bulk insert request.
|
||||||
#[derive(Clone, PartialEq, ::prost::Message)]
|
#[derive(Clone, PartialEq, ::prost::Message)]
|
||||||
|
|||||||
@@ -104,9 +104,10 @@ impl CreateTableForm {
|
|||||||
}),
|
}),
|
||||||
);
|
);
|
||||||
|
|
||||||
let has_money = columns
|
let has_money = columns.iter().any(|column| {
|
||||||
.iter()
|
column.field_type.eq_ignore_ascii_case("money")
|
||||||
.any(|column| column.field_type.eq_ignore_ascii_case("money"));
|
|| column.field_type.eq_ignore_ascii_case("accounting")
|
||||||
|
});
|
||||||
let base_currency = self.base_currency.trim().to_ascii_uppercase();
|
let base_currency = self.base_currency.trim().to_ascii_uppercase();
|
||||||
if has_money && base_currency.is_empty() {
|
if has_money && base_currency.is_empty() {
|
||||||
return Err("A base currency is required when a MONEY column is used.".to_string());
|
return Err("A base currency is required when a MONEY column is used.".to_string());
|
||||||
|
|||||||
@@ -184,7 +184,6 @@ fn row_for_table(table: &ImportTable, positions: &[(usize, String)], row: &[Stri
|
|||||||
}
|
}
|
||||||
Ok(PostTableDataBulkRow {
|
Ok(PostTableDataBulkRow {
|
||||||
data,
|
data,
|
||||||
journal_id: None,
|
|
||||||
})
|
})
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
2
server
2
server
Submodule server updated: e52b2ab6e4...549f26df70
Submodule tui-canvas updated: 2a1849fb95...3ecc28ee11
Submodule tui-pages updated: 76e6d5688f...17601d9c45
Reference in New Issue
Block a user