Pagina 1 di 1
					
				[Risolto] Avvisa se non è una fattura SDI
				Inviato: mercoledì 31 gennaio 2024, 10:08
				da Barakkino
				Buongiorno,
Dallo SDI (Sistema Di Interscambio Ag.Entrate) copio da un file PDF la fattura del fornitore, la incollo in un foglio OO (A1) e da qui poi ricavo i dati da manipolare.
Il mio quesito è: se per errore in A1 non venisse incollato il testo "FATTURA ELETTRONICA" è possibile creare un avviso di errore?
Grazie
| Editato: Allegati cancellati, contengono dati sensibili? (Admin) | 
 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: mercoledì 31 gennaio 2024, 11:13
				da charlie
				Ciao credo che i tuoi allegati contengano dati sensibili. Se mi sbaglio fammelo saper, grazie.
			 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: mercoledì 31 gennaio 2024, 18:31
				da Barakkino
				charlie ha scritto: ↑mercoledì 31 gennaio 2024, 11:13
Ciao credo che i tuoi allegati contengano dati sensibili. Se mi sbaglio fammelo saper, grazie.
 
Grazie, Charlie della tua attenzione
Si tratta di una bolletta Consorzio Acque Potabili (CAP) i miei dati li ho cancellati tutti sono rimasti solo quelli dell'Ente che sono pubblici.
 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: mercoledì 31 gennaio 2024, 19:00
				da charlie
				Ok, li allego nuovamente.
			 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: mercoledì 31 gennaio 2024, 22:10
				da Attilafdd
				Allego un esempio
			
		
				
			 
- Cattura Esempio 2.png (101.71 KiB) Visto 913 volte
  
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: giovedì 1 febbraio 2024, 10:16
				da Barakkino
				Attilafdd ha scritto: ↑mercoledì 31 gennaio 2024, 22:10
Allego un esempio
Cattura Esempio 2.png
 
Grazie, Attilafdd
la tua applicazione funziona benissimo, ma io avrei preferito una macro che bloccasse "Incolla" con una finestra indicante il non avvenuto incollaggio. La mia richiesta è anche perché ho altre situazioni simili dove incollando in modo sbagliato (+ o - celle) comprometterebbe il risultato.
 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: giovedì 1 febbraio 2024, 12:40
				da Gaetanopr
				Barakkino ha scritto: ↑giovedì 1 febbraio 2024, 10:16
....ma io avrei preferito una macro che bloccasse "Incolla" con una finestra indicante il non avvenuto incollaggio. La mia richiesta è anche perché ho altre situazioni simili dove incollando in modo sbagliato (+ o - celle) comprometterebbe il risultato.
 
Al massimo puoi cancellare quello appena incollato se in A1 non è presente la scritta "FATTURA ELETTRONICA", questo perchè se prima non incolli il contenuto in memoria non puoi sapere cosa sia presente nell'area degli appunti.
Ho aggiunto 3 righe alla fine della macro presente nel tuo allegato
Codice: Seleziona tutto
sub Incolla
rem ----------------------------------------------------------------------
rem define variables
dim document   as object
dim dispatcher as object
rem ----------------------------------------------------------------------
rem get access to the document
document   = ThisComponent.CurrentController.Frame
dispatcher = createUnoService("com.sun.star.frame.DispatchHelper")
rem ----------------------------------------------------------------------
dim args1(0) as new com.sun.star.beans.PropertyValue
args1(0).Name = "Flags"
args1(0).Value = "A"
dispatcher.executeDispatch(document, ".uno:Delete", "", 0, args1())
rem ----------------------------------------------------------------------
dim args2(0) as new com.sun.star.beans.PropertyValue
args2(0).Name = "ToPoint"
args2(0).Value = "$A$1"
dispatcher.executeDispatch(document, ".uno:GoToCell", "", 0, args2())
rem ----------------------------------------------------------------------
dim args3(0) as new com.sun.star.beans.PropertyValue
args3(0).Name = "Format"
args3(0).Value = 1
dispatcher.executeDispatch(document, ".uno:PasteSpecial", "", 0, args3())
iF ThisComponent.CurrentController.ActiveSheet.GetCellRangeByName("A1").String = "FATTURA ELETTRONICA" Then 
   dispatcher.executeDispatch(document, ".uno:Undo", "", 0, Array())
End If 
end sub
 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: venerdì 2 febbraio 2024, 10:22
				da Barakkino
				Grazie, Gaetanopr
Non so perché ma la macro non funziona. Forse perché c'è "Incolla Speciale" ?
			 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: lunedì 5 febbraio 2024, 9:43
				da Gaetanopr
				Cosa non funziona? io ho semplicemente aggiunto 3 righe alla macro già esistente, le mie modifiche annullano l'operazione di incollaggio in caso in A1 sia presente la scritta FATTURA ELETTRONICA, rileggendo a te però serve il contrario!!(forse intendi questo per "non funziona") ti basta cambiare il segno = con diverso <>.
Codice: Seleziona tutto
iF ThisComponent.CurrentController.ActiveSheet.GetCellRangeByName("A1").String <> "FATTURA ELETTRONICA" Then 
   dispatcher.executeDispatch(document, ".uno:Undo", "", 0, Array())
End If 
 
			
					
				Re: Avvisa se non è una fattura SDI
				Inviato: martedì 6 febbraio 2024, 12:09
				da Barakkino
				Gaetanopr ha scritto: ↑lunedì 5 febbraio 2024, 9:43
Grazie Gaetano, sempre gentile
potevo arrivarci io,  
