belege umbenannt

This commit is contained in:
2026-04-30 17:40:13 +02:00
parent f52d5fa3dd
commit b5d7e435c1
802 changed files with 84 additions and 19296 deletions
+18
View File
@@ -0,0 +1,18 @@
<?xml version="1.0" encoding="UTF-8"?>
<projectDescription>
<name>gemfin-shiny</name>
<comment></comment>
<projects>
</projects>
<buildSpec>
<buildCommand>
<name>org.eclipse.statet.r.resourceProjects.RBuilder</name>
<arguments>
</arguments>
</buildCommand>
</buildSpec>
<natures>
<nature>org.eclipse.statet.ide.resourceProjects.Statet</nature>
<nature>org.eclipse.statet.r.resourceProjects.R</nature>
</natures>
</projectDescription>
+16 -12
View File
@@ -19,7 +19,7 @@ buchungenUI <- function(id) {
## ** Gegenbuchungen ----
h3("Details / Gegenbuchungen"),
uiOutput(ns("details_table")) ,
),
),
## ** Eingabefelder ----
column(4,
selectizeInput(ns("contact"), label = "Kontakt", choices = get_contact_choices(conn),
@@ -60,7 +60,7 @@ buchungenServer <- function(id, conn, r_global) {
## ** Reactive Variablen ----
postings_data <- reactiveVal(read_buch_tabelle(conn))
sel_details <- reactiveVal(NULL)
selected_trans_id <- reactiveVal(NULL)
selected_entry_id <- reactiveVal(NULL)
reset_trigger <- reactiveVal(NULL)
current_main_idx <- reactiveVal(NULL)
@@ -83,7 +83,7 @@ buchungenServer <- function(id, conn, r_global) {
else d
})
## ** Haupttabelle rendern ----
## ** Haupttabelle rendern ----
output$buchungen_table <- renderReactable({
reset_trigger()
f_reactable(
@@ -94,14 +94,14 @@ buchungenServer <- function(id, conn, r_global) {
filterable = TRUE,
)
})
## ** Auswahl anzeigen ----
## ** Auswahl anzeigen ----
sel <- reactive(getReactableState("buchungen_table", "selected"))
observeEvent(sel(), ignoreInit = T, {
idwert <- gefilterte_daten()$id[sel()]
record <- read_posting(conn, idwert)
record_entry <- read_entry(conn, record$entry_id)
updateSelectizeInput(session, "contact", selected = record_entry$contact_id)
updateTextAreaInput(session, "note", value = record_entry$purpose)
updateTextAreaInput(session, "note", value = record_entry$purpose)
@@ -133,7 +133,7 @@ updateTextAreaInput(session, "note", value = record_entry$purpose)
observeEvent(input$save_trans, {
req(sel_details())
n_rows <- nrow(sel_details())
# Alle Zeilen in einer Liste sammeln
# Alle Zeilen in einer Liste sammeln
all_records <- lapply(1:n_rows, function(ind) {
data.frame(
id = as.integer(input[[paste0("id_", ind)]]),
@@ -144,7 +144,7 @@ updateTextAreaInput(session, "note", value = record_entry$purpose)
stringsAsFactors = FALSE
)
})
# Zu einem großen Dataframe zusammenfügen
# Zu einem großen Dataframe zusammenfügen
final_df <- do.call(rbind, all_records)
@@ -179,17 +179,20 @@ updateTextAreaInput(session, "note", value = record_entry$purpose)
## ** Anhänge ----
output$attachments_ui <- renderUI({
req(sel_details())
entry_id <-
dbxSelect(conn, paste0("SELECT entry_id FROM postings WHERE id=", sel_details()$id[1])) %>%
pull
att <- dbxSelect(conn, paste0("SELECT * FROM attachments WHERE entry_id = ", entry_id ))
selected_entry_id(dbxSelect(conn, paste0("SELECT entry_id FROM postings WHERE id=",
sel_details()$id[1])) %>%
pull )
print(selected_entry_id())
att <- dbxSelect(conn, paste0("SELECT * FROM attachments WHERE entry_id = ", selected_entry_id() ))
if (nrow(att) == 0) return(p("Keine Anhänge vorhanden."))
## *** Anhänge anzeigen ----
tagList(lapply(seq_len(nrow(att)), function(i) {
ext <- tools::file_ext(att$original_name[i])
filename <- paste0("attachments/", att$id[i], ".", ext)
filename <- paste0("www/documents/", att$id[i], ".", ext)
## *** Anhang öffnen ----
observeEvent(input[[paste0("open_att_", att$id[i])]], {
browser()
showModal(modalDialog(
tags$iframe(src = filename, width = "100%", height = "600px",
style = "border:none;"),
@@ -199,6 +202,7 @@ updateTextAreaInput(session, "note", value = record_entry$purpose)
footer = modalButton("Schließen")
))
}, ignoreInit = TRUE, once = FALSE)
## *** Buttons Anhänge ----
div(
actionLink(ns(paste0("open_att_", att$id[i])), att$original_name[i]),
+25 -1
View File
@@ -450,7 +450,7 @@ if(ok){
anz <- length(eintraege)
for(ind in 1:length(eintraege)){
if( exists(paste0(zielpfad, eintraege[ind])) ){
cat(ind, " von ", anz, "\n")
cat(ind, " von ", anz, "\n")
file.copy(
from = paste0(pfad, vorhanden[ind]),
to = "~/Documents/workspace/gemfin-shiny/www/documents/")
@@ -498,3 +498,27 @@ dbDisconnect(con_f)
print("Migration finished.")
## * Dateien umbenennen ----
library("tools")
atts <- dbReadTable(conn, "attachments")
sum(duplicated(atts$id)) == 0
pfad <- "www/attachments/"
for( ind in 1:nrow(atts)){
datei <- atts$original_name[ind]
if( file.exists(paste0(pfad, datei)) ){
# print(ind)
ext <- file_ext(datei)
idwert <- atts$id[ind]
if(is.na(idwert)) break
name_neu <- paste0(idwert,".",ext)
print(name_neu)
file.copy(from = paste0(pfad, datei), to=paste0("www/documents/", name_neu), overwrite = T)
}
}
atts %>%
filter(id == 1379)
which( "1379.pdf" %in% atts$original_name)
+24 -2
View File
@@ -12,8 +12,8 @@ library("conflicted")
library("R.utils")
library("shinyjs")
conflicts_prefer(dplyr::select)
conflicts_prefer(dplyr::filter)
conflicts_prefer()
conflicts_prefer()
conn <- dbConnect(RSQLite::SQLite(), "db/development.sqlite")
@@ -21,3 +21,25 @@ sourceDirectory("R/")
source("~/R/rfunc/fehler_add.R")
conflicts_prefer(
ggplot2::`%+%`,
shinyjs::alert,
shinydashboard::box,
rJava::clone,
dplyr::select,
dplyr::filter,
tidyr::extract,
shinyjs::hidden,
dplyr::ident,
dplyr::lag,
shiny::printStackTrace,
shinyjs::removeClass,
shinyjs::reset,
shiny::runExample,
shiny::setProgress,
shinyjs::show,
dplyr::sql,
shiny::validate,
.quiet = TRUE
)
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.
Binary file not shown.

Some files were not shown because too many files have changed in this diff Show More