Casa / Tutorial Windows / Il formato della data predefinito in 1s 8.2. Stringa di formato. Opzioni di stringa di formato di base

Il formato della data predefinito in 1s 8.2. Stringa di formato. Opzioni di stringa di formato di base

I principali tipi di dati in 1C - numero, booleano e data - possono essere rappresentati in molti formati. I programmatori spesso affrontano il fatto che i requisiti per il tipo di dati variano notevolmente nei diversi report e tabelle. Gli sviluppatori 1C hanno pensato alla comodità dei programmatori e hanno creato una funzione speciale che facilita enormemente il processo di modifica dell'aspetto dei dati. L'attività principale della funzione è trasmettere un numero, una data o un tipo booleano a il tipo giusto tipo stringa.

Descrizione della funzione "Formatta".

La sintassi di questa funzione è semplice: puoi passare due parametri come parametri. Innanzitutto, lo sviluppatore specifica il valore da formattare. Affinché 1C possa capire come modificare il valore, il programmatore specifica il secondo parametro come valore stringa contenente operandi predefiniti. È il valore di questa riga che determina il modo in cui gli utenti vedranno i dati nel report.

FormattedValue = Format(VariableForFormatting, TextFormatString);

Se il parametro "FormatString" non è impostato, 1C converte il valore specificato in una stringa. Tieni presente che una data vuota e 0 verranno convertiti in una stringa vuota, che potrebbe non piacere agli utenti. Ogni parametro nella stringa di formato è una combinazione del nome, del simbolo "=" e del valore specificato tra virgolette. Ciò consente di includere i caratteri utilizzati per scrivere la stringa di formato della funzione Format in 1C.

È possibile inserire qualsiasi carattere nella visualizzazione dei dati ad eccezione di quelli utilizzati nella sintassi di scrittura della stringa di formato. Se è necessario aggirare questa limitazione, utilizzare le virgolette singole. Questa soluzione aiuterà anche nelle situazioni in cui un simbolo potrebbe essere interpretato erroneamente dal compilatore.

Per comodità degli sviluppatori, 1C ha un costruttore di stringhe di formato integrato. È possibile accedervi nei moduli tramite menù contestuale o nell'ACS attraverso i luoghi forniti dagli sviluppatori. Ad esempio, tale opportunità può essere trovata nell'elenco dei campi per la richiesta nella sezione "Design".

Il vantaggio più importante del costruttore è che puoi vedere immediatamente come appariranno i tuoi dati alla fine. Dopo aver postato impostazioni necessarie per un tipo di dati specifico nella sezione "Esempio", ti viene mostrato il risultato delle tue impostazioni. Nella casella di testo senza nome in basso, troverai la stringa di formato utilizzata per ottenere il risultato. Può essere copiato e utilizzato in futuro se il risultato ti soddisfa completamente.

Il costruttore di stringhe di formato può essere di grande aiuto per gli sviluppatori alle prime armi, ma i programmatori esperti preferiscono non perdere tempo con esso. Lo sviluppo andrà molto più veloce se conosci i parametri chiave di base della stringa di formato e li usi senza chiamare il costruttore.

Opzioni di stringa di formato di base

L'apprendimento di tutti i comandi disponibili non funzionerà e non è necessario. Lo sviluppatore deve solo conoscere alcune operazioni popolari e come applicarle. In qualsiasi momento, puoi aprire l'elenco completo dei parametri della stringa di formato nell'assistente di sintassi e selezionare quello che ti serve. Un programmatore 1C può tornare utile lavoro quotidiano le seguenti opzioni:

  • L è il formato del paese per i cui rappresentanti verranno visualizzati i dati;
  • ChG - imposta il raggruppamento delle cifre del numero;
  • FZ - imposta il numero totale di gruppi di caratteri delle parti intere e frazionarie del numero che verrà visualizzato. Se il valore del parametro NPV non è specificato nella stringa di formato con questa chiave, allora frazione non verrà mostrato;
  • FDC è un parametro che specifica il numero di caratteri nella parte del numero dopo la virgola. L'arrotondamento avviene secondo le regole standard della matematica;
  • CHS è un parametro che sposta le cifre di un numero. Il valore può essere positivo, moltiplicando per 10, o negativo, dividendo. Squadra utile, se è necessario eseguire l'output in un modulo e continuare a lavorare con un numero in un altro;
  • FRD - imposta il simbolo che separa le parti frazionarie e intere del numero. Per impostare il carattere che separa i gruppi di una parte intera, utilizzare "CHG". Per applicazione spazio non infrangibile usa una stringa vuota;
  • FHN - mostra l'uso degli zeri iniziali. Il valore di questo parametro non è impostato;
  • DF è una delle opzioni di stringa di formato più comuni. Controlla il formato della data. In 1C, utilizzando il comando "Formato", è possibile visualizzare la data in quasi tutti i formati, inclusa la scrittura del nome del mese. Possibili valori molto, la loro lista può essere vista nell'assistente di sintassi;
  • BL e BI - impostano la rappresentazione per il tipo di dato logico, rispondendo, rispettivamente, per falso e vero. Pertanto, puoi sostituire il "segno di spunta" standard con qualsiasi parola o frase più comprensibile per gli utenti.

L'universalismo e la praticità del costruttore sono diventati le ragioni principali della popolarità della funzione "Formato" tra gli sviluppatori 1C. Le impostazioni flessibili ti aiuteranno a impostarne qualsiasi aspetto dati su richiesta del cliente.

Funzioni di linguaggio integrate.Formato (funzioni di script.Formato)
Funzioni del linguaggio integrate (funzioni di script)
Formato
Sintassi:
Formato(<Значение>, <ФорматнаяСтрока>
Opzioni:
<Значение>(necessario)
Tipo: Numero; Data di; Booleano. Il valore da formattare.
<ФорматнаяСтрока>(opzionale)
Tipo: stringa. La stringa di formato è un valore stringa che include le opzioni di formattazione.
Le opzioni di formattazione sono elencate attraverso il carattere ";". La presenza del parametro significa che la formattazione è diversa da quella standard.
Se il parametro non è specificato, viene applicata la formattazione standard, che sostanzialmente corrisponde alla conversione del valore in una stringa. Tuttavia, per i valori di tipo Numero e Data, i valori predefiniti (rispettivamente 0 e 01.01.0001 00:00:00) restituiranno una stringa vuota.
Ogni parametro è specificato dal nome del parametro, dal simbolo "=" e dal valore del parametro. Il valore del parametro può essere specificato tra virgolette singole o doppie. Questo è obbligatorio se il valore del parametro contiene caratteri utilizzati nella sintassi della stringa di formato. All'interno del valore del parametro può essere specificato caratteri arbitrari, che verrà visualizzato così com'è durante la generazione della stringa risultante. Pertanto, ad esempio, è possibile specificare i separatori per ore, minuti e secondi durante la formattazione dell'ora. Se questi caratteri corrispondono ai valori della stringa di formato, devono essere racchiusi tra virgolette singole.
Nomi e valori dei parametri della stringa di formato:
L (L) - Il nome della lingua, paese per il quale verrà eseguita la formattazione standard. Nomi lingua disponibili:
afrikaans
af_ZA Afrikaans (Sud Africa)
sono amarico
am_ET Amarico (Etiopia)
ar arabo
ar_AE Arabo (Emirati Arabi Uniti)
ar_BH Arabo (Bahrein)
ar_DZ Arabo (Algeria)
ar_EG Arabo (Egitto)
ar_IQ Arabo (Iraq)
ar_JO Arabo (Giordania)
ar_KW Arabo (Kuwait)
ar_LB Arabo (Libano)
ar_LY Arabo (Libia)
ar_MA Arabo (Marocco)
ar_OM Arabo (Oman)
ar_QA Arabo (Qatar)
ar_SA Arabo (Arabia Saudita)
ar_SD Arabo (Sudan)
ar_SY Arabo (Siria)
ar_TN Arabo (Tunisia)
ar_YE Arabo (Yemen)
come assamese
as_IN Assamese (India)
az azero
az_AZ Azeri (Azerbaigian)
az_Cyrl Azero (cirillico)
az_Cyrl_AZ Azerbaigiano (Cirillico, Azerbaigian)
az_Latn Azero (latino)
az_Latn_AZ Azerbaigiano (latino, Azerbaigian)
essere bielorusso
be_BY bielorusso (Bielorussia)
bg bulgaro
bg_BG Bulgaro (Bulgaria)
bn bengalese
bn_IN bengalese (India)
ca catalano
ca_ES Catalano (Spagna)
cs ceco
cs_CZ Ceco (Repubblica Ceca)
cy gallese
cy_GB Gallese (Regno Unito)
da danese
da_DK Danese (Danimarca)
de tedesco
de_AT Tedesco (Austria)
de_BE Tedesco (Belgio)
de_CH Tedesco (Svizzera)
de_DE Tedesco (Germania)
de_LU Tedesco (Lussemburgo)
el greco
el_GR Greco (Grecia)
it inglese
it_AU Inglese (Australia)
en_BE Inglese (Belgio)
it_BW Inglese (Botswana)
it_CA Inglese (Canada)
it_GB Inglese (Regno Unito)
it_HK Inglese (Hong Kong, (Area amministrativa speciale, Cina))
en_IE Inglese (Irlanda)
en_IN Inglese (India)
it_MT Inglese (Malta)
it_NZ Inglese (Nuova Zelanda)
it_PH ​​Inglese (Filippine)
it_PK Inglese (Pakistan)
it_SG Inglese (Singapore)
en_US Inglese (Stati Uniti d'America)
it_VI Inglese (Isole Vergini Americane)
it_ZA Inglese (Sudafrica)
it_ZW Inglese (Zimbabwe)
es spagnolo
es_AR Spagnolo (Argentina)
es_BO Spagnolo (Bolivia)
es_CL Spagnolo (Cile)
es_CO Spagnolo (Colombia)
es_CR Spagnolo (Costarica)
es_DO Spagnolo (Repubblica Dominicana)
es_EC Spagnolo (Ecuador)
es_ES Spagnolo (Spagna)
es_GT Spagnolo (Guatemala)
es_HN Spagnolo (Honduras)
es_MX Spagnolo (Messico)
es_NI Spagnolo (Nicaragua)
es_PA Spagnolo (Panama)
es_PE Spagnolo (Perù)
es_PR Spagnolo (Porto Rico)
es_PY Spagnolo (Paraguay)
es_SV Spagnolo (El Salvador)
es_US Spagnolo (Stati Uniti d'America)
es_UY Spagnolo (Uruguay)
es_VE Spagnolo (Venezuela)
ed estone
et_EE Estone (Estonia)
eu basco
eu_ES Basco (Spagna)
fa persiano
fa_AF Persiano (Afghanistan)
fa_IR Persiano (Iran)
fi finlandese
fi_FI finlandese (Finlandia)
fo faroese
fo_FO Faroese (Isole Faroe)
fr francese
fr_BE Francese (Belgio)
fr_CA Francese (Canada)
fr_CH Francese (Svizzera)
fr_FR Francese (Francia)
fr_LU Francese (Lussemburgo)
ga irlandese
ga_IE Irlandese (Irlanda)
gl Galiziano
gl_ES, galiziano (Spagna)
Gu Guiarati
gu_IN Gujarati (India)
lui ebraico
he_IL Ebraico (Israele)
ciao hindi
hi_IN Hindi (India)
hr croato
hr_HR Croato (Croazia)
uh ungherese
hu_HU Ungherese (Ungheria)
ciao armeno
hy_AM Armeno (Armenia)
hy_AM_REVISED Armeno (Armenia, REVISED)
id indonesiano
id_ID indonesiano (Indonesia)
è islandese
is_IS Islandese (Islanda)
it italiano
it_CH, italiano (Svizzera)
it_IT Italiano (Italia)
ja giapponese
ja_JP Giapponese (Giappone)
ka georgiano
ka_GE Georgiano (Georgia)
kk kazako
kk_KZ Kazako (Kazakistan)
kl groenlandese
kl_GL groenlandese (Groenlandia)
kannada
kn_IN Kannada (India)
ko coreano
ko_KR coreano (Corea del Sud)
Kok Konkani
kok_IN Konkani (India)
lituano
lt_LT Lituano (Lituania)
lv lettone
lv_LV Lettone (Lettonia)
mk macedone
mk_MK Macedone (Macedonia)
ml malayalam
ml_IN Malayalam (India)
signor Maratian
mr_IN Maratian (India)
ms malese
ms_BN malese (Brunei)
ms_MY Malese (Malesia)
mt Maltese
mt_MT Maltese (Malta)
nb Bokmål norvegese
nb_NO Bokmål norvegese (Norvegia)
nl olandese
nl_BE Olandese (Belgio)
nl_NL Olandese (Paesi Bassi)
nn Norvegese Nynorsk
nn_NO Norvegese Nynorsk (Norvegia)
om Oromo (Athan)
om_ET Oromo (Afan) (Etiopia)
om_KE Oromo (Afan) (Kenya)
o Oria
o_IN Oriya (India)
pa Punjabi
pa_IN Punjabi (India)
pl Polacco
pl_PL Polacco (Polonia)
ps pashto (pashtu)
ps_AF Pashtu (Pushtu) (Afghanistan)
pt portoghese
pt_BR Portoghese (Brasile)
pt_PT Portoghese (Portogallo)
rumeno
ro_RO Rumeno (Romania)
it russo
it_RU Russo (Russia)
ru_UA Russo (Ucraina)
sk slovacco
sk_SK slovacco (Slovacchia)
sl sloveno
sl_SI Sloveno (Slovenia)
quindi la Somalia
so_DJ Somalia (Gibuti)
so_ET Somalia (Etiopia)
so_KE Somalia (Kenya)
so_SO Somalia (Somalia)
albanese mq
sq_AL Albanese (Albania)
serbo
sr_CS Serbo (Serbia e Montenegro)
sr_Cyrl Serbo (cirillico)
sr_Cyrl_CS Serbo (cirillico, Serbia e Montenegro)
sr_Cyrl_YU Serbo (cirillico, Jugoslavia)
sr_Latn Serbo (latino)
sr_Latn_CS Serbo (latino, Serbia e Montenegro)
sr_Latn_YU Serbo (latino, Jugoslavia)
sr_YU Serbo (Jugoslavia)
svedese
sv_FI Svedese (Finlandia)
sv_SE Svedese (Svezia)
swahili
sw_KE Swahili (swahili)
sw_TZ Swahili (Tanzania)
è tamil
ta_IN Tamil (India)
telugu
te_IN Telugu (India)
thailandese
th_TH Tailandese (Thailandia)
Ti Tigrino
ti_ER Tigrinia (Eritrea)
ti_ET Tigrinia (Etiopia)
tr turco
tr_TR Turco (Turchia)
Ucraino britannico
uk_UA Ucraino (Ucraina)
il tuo urdu
ur_PK Urdu (Pakistan)
uz uzbeco
uz_Cyrl Uzbeko (cirillico)
uz_Cyrl_UZ Uzbeko (cirillico, Uzbekistan)
uz_Latn Uzbeco (latino)
uz_Latn_UZ Uzbeko (latino, Uzbekistan)
uz_UZ Uzbeco (Uzbekistan)
vi vietnamita
vi_VN Vietnamita (Vietnam)
z cinese
zh_CN Cinese (Cina)
zh_Hans Cinese (Hans)
zh_Hans_CN Cinese (Hans, Cina)
zh_Hans_SG Cinese (Hans, Singapore)
zh_Hant Cinese (Hant)
zh_Hant_HK Cinese (Hant, Hong Kong (Area amministrativa speciale, Cina))
zh_Hant_MO Cinese (Hant, Macao (Area amministrativa speciale, Cina))
zh_Hant_TW Cinese (Hant, Taiwan)
zh_HK cinese (Hong Kong (area amministrativa speciale, Cina))
zh_MO Cinese (Macao (Area amministrativa speciale, Cina))
zh_SG Cinese (Singapore)
zh_TW Cinese (Taiwan)
NZ (ND) - Il numero totale di cifre decimali visualizzate delle parti intere e frazionarie. Il numero originale viene quindi arrotondato secondo le regole di arrotondamento Okr15as20. Se questo parametro è specificato, per visualizzare la parte frazionaria del numero, è necessario specificare il parametro NPV, altrimenti la parte frazionaria non verrà visualizzata.
NFD (NFD) - Il numero di cifre decimali nella parte frazionaria. Il numero originale viene quindi arrotondato secondo le regole di arrotondamento Okr15as20.
CHS (NS) - Bit shift: positivo - divisione, negativo - moltiplicazione. In altre parole, ciò significa che il numero originale verrà moltiplicato o diviso per 10*C, dove C è il valore modulo del parametro.
FRD (NDS) - Simbolo-separatore di parti intere e frazionarie.
CHRG (NGS) - Il carattere separatore di gruppo della parte intera del numero. Se una stringa vuota viene utilizzata come delimitatore, il delimitatore sarà uno spazio unificatore.
NZ (NZ) - Una stringa che rappresenta il valore zero di un numero. Se non impostata, la rappresentazione è una stringa vuota. Se "HN=" è ​​specificato, quindi sotto forma di "0". Non utilizzato per campi di input numerici.
NLZ - Indica se visualizzare gli zeri iniziali. Senso dato parametro non è impostato, l'effettiva presenza del parametro determina l'uscita degli zeri iniziali.
CHG (NG) - L'ordine di raggruppamento delle cifre del numero. Come valore vengono indicati i numeri, separati da virgole, che indicano il numero di cifre raggruppate da destra a sinistra. Per specificare che l'ultimo numero di raggruppamento deve essere ripetuto per tutte le cifre di ordine superiore, viene specificato uno 0 dopo di esso, separato da una virgola.
CHO (NN) - Rappresentazione di numeri negativi.
0 - stringa come "(1,1)";
1 - stringa come "-1,1";
2 - una linea come "- 1,1";
3 - stringa come "1,1-";
4 - una linea come "1,1 -".
DF (DF) - Formato della data.
d (d) - giorno del mese (in cifre) senza zero iniziale;
dd (dd) - giorno del mese (in cifre) con uno zero iniziale;
ddd (ddd) - nome breve del giorno della settimana *);
dddd (dddd) - nome completo del giorno della settimana *);
M (M) - numero del mese (in cifre) senza zero iniziale;
MM (MM) - numero del mese (in cifre) con uno zero iniziale;
MMM (MMM) - nome breve del mese *);
MMMM (MMMM) - nome completo del mese *);
k (q) - il numero del trimestre dell'anno;
y (y) - numero dell'anno senza secolo e zero iniziale;
aa (aa) - numero dell'anno senza secolo con zero iniziale;
aaaa (aaaa) - numero dell'anno con secolo;
h (h) - ora nella versione a 12 ore senza zeri iniziali;
hh (hh) - ora nella versione 12 ore con zero iniziale;
H (H) - ora nella versione 24 ore senza zeri iniziali;
HH (HH) - ora in versione 24 ore con zero iniziale;
m (m) - minuto senza zero iniziale;
mm (mm) - minuto con zero iniziale;
s (s) - secondo senza zero iniziale;
ss (ss) - secondo con zero iniziale;
вв (tt) - visualizza la metà della giornata AM/PM (valido solo per le lingue di configurazione che supportano la rappresentazione dell'ora a 12 ore).
Nota: *) - non utilizzato per la stringa di formato del campo di immissione della data.
DLF (DLF) - Formato data locale. Specifica l'opzione per visualizzare parti della data.
D (D) - data (in numeri);
DD (DD) - data lunga (mese in parole);
B (T) - tempo pieno, la data può essere combinata con l'ora;
DV (DT) - data e ora.
Esempio: Format("20051120140323","DLF=DDV") è "20 novembre 2005 14:03:23".
Importante! Ordine delle opzioni della stringa di formato per DLF<дата + время>(DV o DVD) non può essere modificato.
DP (DE) - Una stringa che rappresenta una data vuota (ad esempio, Format("00010101000000" ,"DP=""data vuota""") restituisce la stringa "data vuota").
BF (BF) - Una stringa che rappresenta il valore booleano False.
BI (BT) - Una stringa che rappresenta il valore booleano True.
Nota. Utilizzo dei parametri per il campo di immissione: il parametro DP (DE) non viene utilizzato; il parametro DLF (DLF) viene utilizzato solo con i valori D (D), V (T) e DV (DT).
Valore di ritorno:
Tipo: stringa. La stringa risultante dalla formattazione del valore passato.
Descrizione:
Genera una rappresentazione leggibile dei valori. Utile nei report e in altre visualizzazioni visive di valori.

Disponibilità:
Cliente sottile, client web, server, giunzione esterna.
Esempio:
// Esempi di formattazione dei numeri
A = Formato(123456.789, "VAN=10; VAN=2");
// A = "123456.79"
A = Formato(123456.789, "FRD="-"");
// A = "123 456-789"
A = Formato(-123456.789, "CHO=0");
// A = "(123456.789)";

// Esempi di formattazione della data
A = Formato("20020820153309", "DF=""gg MMMM aaaa "y." HH:mm:ss""");
// A = "20 agosto 2002 15:33:09"
A = Formato("20020820153309", "DF=""gg/MM-aaaa""");
// A = "20/08-2002"
A = Formato("20020820153309", "DLF=DD");
// A = "20 agosto 2002";
A = Formato("20020820153309", "DLF=D");
// A = "20.08.2002";
A = Formato("20020820153309", "DLF=B");
// A = "15:33:09";

// Esempi di formattazione di espressioni booleane
A = Formato(Vero, "BL=Non disponibile; BI=Disponibile");
// A = "Disponibile";

Tipo: Numero; Data di; Booleano. Il valore da formattare.<ФорматнаяСтрока> (facoltativo) Tipo: stringa. La stringa di formato è un valore stringa che include le opzioni di formattazione. Le opzioni di formattazione sono elencate attraverso il simbolo ";". La presenza del parametro significa che la formattazione è diversa da quella standard. Se il parametro non è specificato, viene applicata la formattazione standard, che sostanzialmente corrisponde alla conversione del valore in una stringa. Tuttavia, per i valori di tipo Numero e Data, i valori predefiniti (rispettivamente 0 e 01.01.0001 00:00:00) restituiranno una stringa vuota. Ogni parametro è specificato dal nome del parametro, dal simbolo "=" e dal valore del parametro. Il valore del parametro può essere specificato tra virgolette singole o doppie. Questo è obbligatorio se il valore del parametro contiene caratteri utilizzati nella sintassi della stringa di formato. È possibile specificare caratteri arbitrari all'interno del valore del parametro, che verrà visualizzato così com'è quando si forma la stringa risultante. Pertanto, ad esempio, è possibile specificare i separatori per ore, minuti e secondi durante la formattazione dell'ora. Se questi caratteri corrispondono ai valori della stringa di formato, devono essere racchiusi tra virgolette singole. Nomi e valori dei parametri della stringa di formato: L (L) - il nome della lingua, paese per il quale verrà eseguita la formattazione standard. I nomi delle lingue disponibili si trovano dopo la descrizione della stringa di formato. NZ (ND) - il numero totale di cifre decimali visualizzate delle parti intere e frazionarie. Il numero originale viene quindi arrotondato secondo le regole di arrotondamento Okr15as20. Se questo parametro è specificato, per visualizzare la parte frazionaria del numero, è necessario specificare il parametro NPV, altrimenti la parte frazionaria non verrà visualizzata. NFD (NFD) - il numero di cifre decimali nella parte frazionaria. Il numero originale viene quindi arrotondato secondo le regole di arrotondamento Okr15as20. ChS (NS) - bit shift: positivo - divisione, negativo - moltiplicazione. In altre parole, ciò significa che il numero originale verrà moltiplicato o diviso per 10*C, dove C è il valore modulo del parametro. FRD (NDS) - il carattere separatore delle parti intere e frazionarie. CHRG (NGS) - il separatore di caratteri di gruppi della parte intera del numero. Se una stringa vuota viene utilizzata come delimitatore, il delimitatore sarà uno spazio unificatore. NZ (NZ) è una stringa che rappresenta il valore zero di un numero. Se non impostata, la rappresentazione è una stringa vuota. Se "CHN=" è ​​impostato, quindi sotto forma di "0". Non utilizzato per campi di input numerici. NLZ: se visualizzare gli zeri iniziali. Il valore di questo parametro non è impostato, l'effettiva presenza del parametro determina l'uscita degli zeri iniziali. CHG (NG) - l'ordine di raggruppamento delle cifre del numero. Come valore vengono indicati i numeri, separati da virgole, che indicano il numero di cifre raggruppate da destra a sinistra. Solo i primi due numeri hanno senso. Il primo di questi indica il raggruppamento primario, cioè quello che verrà utilizzato per le cifre meno significative della parte intera del numero. Se il secondo numero non è specificato, verranno raggruppate solo le cifre meno significative. Se viene specificato 0 come secondo numero, il valore specificato per il raggruppamento primario verrà applicato a tutte le cifre della parte intera del numero. Se come secondo numero viene utilizzato un valore diverso da 0, questo valore verrà utilizzato per raggruppare tutte le cifre, ad eccezione di quelle meno significative già raggruppate. CHO (NN) - rappresentazione di numeri negativi. 0 (0) - una stringa come "(1,1)"; 1 (1) - una stringa come "-1,1"; 2 (2) - una linea come "- 1.1"; 3 (3) - una stringa come "1,1-"; 4 (4) - una stringa come "1,1 -". DF (DF) è il formato della data. d (d) — giorno del mese (in cifre) senza zero iniziale; dd (dd) — giorno del mese (in cifre) con uno zero iniziale; ddd (ddd) — nome breve del giorno della settimana *); dddd (dddd) — nome completo del giorno della settimana *); M (M) — numero del mese (in cifre) senza zero iniziale; MM (MM) — numero del mese (in cifre) con uno zero iniziale; MMM (MMM) - nome breve del mese *); MMMM (MMMM) è il nome completo del mese *); k (q) è il numero del trimestre dell'anno; y (y) è il numero dell'anno senza il secolo e lo zero iniziale; yy (yy) — numero dell'anno senza secolo con zero iniziale; aaaa (aaaa) — numero dell'anno con secolo; h (h) - ora nella versione a 12 ore senza zeri iniziali; hh (hh) - ora nella versione di 12 ore con uno zero iniziale; H (H) - ora nella versione 24 ore senza zeri iniziali; HH (HH) - ora in versione 24 ore con zero iniziale; m (m) - minuto senza zero iniziale; mm (mm) — minuto con uno zero iniziale; c (s) — secondo senza zero iniziale; ss (ss) — secondo con zero iniziale; bb (tt) — Visualizzazione mezza giornata AM/PM (valido solo per le lingue di configurazione che supportano la rappresentazione dell'ora di 12 ore). Nota: *) - non utilizzato per la stringa di formato del campo di immissione della data. DLF (DLF) è il formato della data locale. Specifica l'opzione per visualizzare parti della data. D (D) - data (in numeri); DD (DD) - data lunga (mese in parole); B (T) - tempo pieno, la data può essere combinata con l'ora; DV (DT) — data e ora. Esempio: l'espressione Format('20051120140323',"DLF=DDV") ha il valore "November 20, 2005 2:03:23 PM". Importante! Ordine delle opzioni della stringa di formato per DLF<дата + время> (DV o DVD) non può essere modificato. DP (DE) è una stringa che rappresenta una data vuota (ad esempio, Format('00010101000000' ,"DP=""data vuota""") restituirà la stringa "data vuota"). BF (BF) è una stringa che rappresenta il valore booleano False. BI (BT) è una stringa che rappresenta il valore booleano True. Nota. Utilizzo dei parametri per il campo di immissione: il parametro DP (DE) non viene utilizzato; il parametro DLF (DLF) viene utilizzato solo con i valori D (D), V (T) e DV (DT). Valore restituito: Tipo: stringa. La stringa risultante dalla formattazione del valore passato. Descrizione: genera una rappresentazione leggibile dei valori. Utile nei report e in altre visualizzazioni visive di valori. Disponibilità: thin client, web client, server, thick client, connessione esterna, applicazione mobile (client), applicazione mobile (server). Elenco delle lingue: af Afrikaans af_NA (af_NA) Afrikaans (Namibia) af_ZA Afrikaans (Sudafrica) am Amarico am_ET Amarico (Etiopia) ar Arabo ar_AE Arabo (Emirati Arabi Uniti) ar_BH Arabo (Bahrein) ar_DZ Arabo (Algeria) ar_EG Arabo (Egitto ) ar_IQ Arabo (Iraq) ar_JO Arabo (Giordania) ar_KW Arabo (Kuwait) ar_LB Arabo (Libano) ar_LY Arabo (Libia) ar_MA Arabo (Marocco) ar_OM Arabo (Oman) ar_QA Arabo (Qatar) ar_SA Arabo (Arabia Saudita) ar_SD Arabo ( Sudan) ) ar_SY Arabo (Siria) ar_TN Arabo (Tunisia) ar_YE Arabo (Yemen) as Assamese as_IN Assamese (India) az Azero az_AZ Azero (Azerbaigian) az_Cyrl Azero (cirillico) az_Cyrl_AZ Azero (cirillico, azero) az_Latn Azero (latino) az_Latn_AZ Azerbaigiano ( Latino, Azerbaigian) be Bielorusso be_BY Bielorusso (Bielorussia) bg Bulgaro bg_BG Bulgaro (Bulgaria) bn Bengala bn_IN Bengala (India) ca Catalano ca_ES Catalani cs Ceco cs_CZ Ceco (Repubblica Ceca) cy Gallese cy_GB Gallese (Regno Unito) da Danese da_DK Danese (Danimarca) de Tedesco de_AT Tedesco (Austria) de_BE Tedesco (Belgio) de_CH Tedesco (Svizzera) de_DE Tedesco (Germania) de_LI ( de_LI) Tedesco ( Liechtenstein) de_LU Tedesco (Lussemburgo) el Greco el_CY (el_CY) Greco (Cipro) el_GR Greco (Grecia) en Inglese en_AU Inglese (Australia) en_BE Inglese (Belgio) en_BW Inglese (Botswana) en_BZ (en_BZ) Inglese (Belize) ) en_CA Inglese (Canada) en_GB Inglese (UK) en_HK Inglese (Hong Kong, (Area amministrativa speciale, Cina)) en_IE Inglese (Irlanda) en_IN Inglese (India) en_JM (en_JM) Inglese (Giamaica) en_MH (en_MH) Inglese (Isole Marshall) en_MT Inglese (Malta) en_NA (en_NA) Inglese (Namibia) en_NZ Inglese (Nuova Zelanda) en_PH Inglese (Filippine) en_PK Inglese (Pakistan) en_SG Inglese (Singapore) en_TT (en_TT) Inglese th (Trinidad e Tobago) en_US Inglese (Stati Uniti d'America) en_VI Inglese (Isole Vergini Americane) en_ZA Inglese (Sud Africa) en_ZW Inglese (Zimbabwe) es Spagnolo es_AR Spagnolo (Argentina) es_BO Spagnolo (Bolivia) es_CL Spagnolo (Cile) es_CO Spagnolo (Colombia) es_CR Spagnolo (Costa Rica) es_DO Spagnolo (Repubblica Dominicana) es_EC Spagnolo (Ecuador) es_ES Spagnolo (Spagna) es_GT Spagnolo (Guatemala) es_HN Spagnolo (Honduras) es_MX Spagnolo (Messico) es_NI Spagnolo (Nicaragua) es_PA Spagnolo (Panama ) ) es_PE Spagnolo (Perù) es_PR Spagnolo (Porto Rico) es_PY Spagnolo (Paraguay) es_SV Spagnolo (El Salvador) es_US Spagnolo (Stati Uniti d'America) es_UY Spagnolo (Uruguay) es_VE Spagnolo (Venezuella) et Estone et_EE Estone (Estonia) eu Basco eu_ES Basco (Spagna) fa Persiano fa_AF Persiano (Afghanistan) fa_IR Persiano (Iran) fi Finlandese fi_FI Finlandese (Finlandia) fo Faroese fo_FO Faroese (Isole Faroe) fr Francese Francese fr_BE Francese (Belgio) fr_CA Francese (Canada) fr_CH Francese (Svizzera) fr_FR Francese (Francia) fr_LU Francese (Lussemburgo) fr_MC (fr_MC) Francese (Monaco) fr_SN (fr_SN) Francese (Senegal) ga Irlandese ga_IE Irlandese (Irlanda) gl Galiziano gl_ES, Galiziano (Spagna) gu Gujarati gu_IN Gujarati (India) he Ebraico he_IL Ebraico (Israele) hi Hindi hi_IN Hindi (India) hr Croato hr_HR Croato (Croazia) hu Ungherese hu_HU Ungherese (Ungheria) hy Armeno hy_AM Armeno (Armenia) hy_AM_REVISED Armeno (Armenia, REVISED) id Indonesiano id_ID Indonesiano (Indonesia) is Islandese is_IS Islandese (Islanda) it Italiano it_CH, Italiano (Svizzera) it_IT Italiano (Italia) ja Giapponese ja_JP Giapponese (Giappone) ka Georgiano ka_GE Georgiano (Georgia) kk Kazako kk_KZ Kazako (Kazakhstan) kl Groenlandese kl_GL Groenlandese (Groenlandia) kn Kannada kn_IN Kannada (India) ko Coreano ko_KR Coreano (Corea del Sud) kok Konkani kok_IN Konkani (Indo) ii) ky Kirghizistan ky_KY Kirghizistan (Kirghizistan) lt Lituano lt_LT Lituano (Lituania) lv Lettone lv_LV Lettone (Lettonia) mk Macedone mk

La programmazione (e i programmi aziendali) di solito si occupano di quanto segue tipi semplici data: numero, stringa, data. I valori di questi tipi per diversi paesi, standard e solo abitudini possono avere una rappresentazione diversa.

Probabilmente il più esempio famoso, questa è una diversa rappresentazione del tempo: in Russia è consuetudine utilizzare le 9:00 e le 21:00 e nei paesi di lingua inglese le 9:00 e le 21:00. La differenza sta sia nella logica (sistema 12 ore o sistema 24 ore) sia nella scrittura.

La rappresentazione del valore si chiama "formato" e oggi discuteremo della modifica del formato della data e del formato del numero in 1C.
La formattazione può essere utilizzata sia da un programmatore nel linguaggio 1C, sia visivamente, senza programmazione, ad esempio, quando si crea un modulo o report stampabile, quando si impostano elementi su un modulo.

Cos'è la formattazione

Il numero e la data, indipendentemente dalla sua rappresentazione sullo schermo o sulla stampa, rimangono se stessi. Formattazione significa solo conversione in un valore di stringa, ovvero come "apparirà" sullo schermo di un computer o su carta.

Le principali differenze tra i formati 1C per rappresentare numeri e date:

  • Numero
    o "." o "," per separare la parte frazionaria
    o numero di cifre decimali
    o raggruppamento di cifre in 3 (1.000.000, non 1.000.000)
  • data e ora
    o ordine anno, mese, giorno
    o carattere delimitatore
    o Formato orario 1C (12 o 24 ore)
    o dettagli ortografici.

Inoltre, nel formato 1C, possono essere indicate ulteriori “convenienze”, ad esempio la visualizzazione di numeri negativi in ​​rosso, oppure la rappresentazione di un “valore vuoto” sotto forma di “0” o “non riempito”.

Principio di formattazione

La formattazione predefinita funziona, ad esempio, quando si converte un numero in una stringa. In alcuni casi, tali impostazioni possono servire un disservizio in cui il programmatore non se lo aspetta.

Ad esempio, quando si converte un numero in una stringa, viene tradotto tenendo conto del raggruppamento delle cifre (e te lo aspetti?):
StringNumber = AbbrLp(2400); //sarà uguale a "2 400"

Per specificare con precisione il formato nel linguaggio 1C, esiste una funzione Format (), con la quale è possibile specificare la rappresentazione richiesta.
NumberString = Format(2400, "Impostazioni")

Come riga "Impostazioni" è necessario specificare il formato richiesto 1C. Tali impostazioni sono specificate in una speciale forma codificata. Considera le impostazioni più comunemente utilizzate:

Formato 1С data e numero per impostazione predefinita

Se hai bisogno di visualizzare una data o un numero e non vuoi preoccuparti di sapere come dovrebbero essere rappresentati secondo le regole del paese desiderato, c'è configurazione più semplice che ti permetterà di fare questo:

L = ShortName del Paese desiderato

Un esempio di visualizzazione di una data secondo le regole di alcuni paesi:
Formato(DataCorrente(), "L=ru")
> 28.03.2012 14:21:32

Formato(DataCorrente(), "L=en")
> 28/03/2012 14:21:24

Formato(DataCorrente(), "L=fr")
> 28/03/2012 14:22:08

Poiché non è difficile da vedere, i nomi dei paesi sono intuitivi.

Formato della data in lingua 1C

Se l'impostazione predefinita non ti basta e desideri specificare l'ordine delle parti della data e i simboli per la loro separazione, devi utilizzare l'impostazione:
DF = "dmg hms"

Di conseguenza, "dmg" è il giorno, il mese e l'anno e "hms" è ore, minuti e secondi. Ciascuna di queste parti può essere saltata. L'ordine è qualsiasi. I caratteri specificati tra le parti verranno utilizzati come caratteri separatori.

Il carattere di una parte della data può essere specificato più volte di seguito, l'aspetto di questa parte della data dipende da questo, ad esempio "d" o "dd" o "dddd".

Decifrare parti della data:

  • d - giorno
    o "d" minuscola
  • M - mese
    o grande "M"
    o può essere specificato da 1 a 4 volte
  • d - anno
    o "g" minuscola
    o può essere elencato 1 o 2 o 4 volte
  • h - ore
    o "h" minuscola - formato 12 ore
    o grande "H" - formato 24 ore
  • m - minuti
    o "m" minuscola
    o può essere specificato 1 o 2 volte
  • s - secondi
    o "s" minuscola
    o può essere specificato 1 o 2 volte
  • bb - Visualizzazione AM/PM per il formato 12 ore
  • k - quarto.

Un esempio di visualizzazione di una data con regole:
Formato(DataCorrente(), "DF=""gg.MM.aaaa hh:mm:ss""")
> 28.03.2012 02:44:44

Formato(DataCorrente(), "DF="" M / g /aaa h:m:s gg""")
> 28/03/2012 14:44:44

Formato(DataCorrente(), "DF=""gg/MM/aaaa hh:mm:ss""")
> 28/03/2012 02:44:44

Formato numerico in linguaggio 1C
A differenza della formattazione della data, dove tutto è abbastanza semplice, ci sono molte opzioni per la formattazione dei numeri. Prenderemo in considerazione quelli che abbiamo trovato utili, ovvero, a nostro avviso, vengono spesso utilizzati.

Il primo "problema" è relativo al raggruppamento predefinito delle cifre in numeri di 3 e alla separazione dei gruppi con uno spazio, ad esempio:
NumeroStr = String(22300500)
> 22 300 500

Ciò è scomodo quando un numero viene convertito in una stringa non per un output bello e comprensibile per l'utente, ma per esigenze di servizio. Questo può essere influenzato dal parametro "CH", ad esempio:

Formato(22300500, "HH=100")
>22300500 //ha rimosso del tutto gli zeri

Formato(22300500, "HH=6")
> 22 300500 //fatto un raggruppamento di soli milioni

Un parametro che consente di arrotondare il numero durante l'output al numero richiesto di cifre dopo la virgola decimale "NPV":

Formato(3.535353, "VAN=""2""")
> 3,54

Parametro che consente di specificare il carattere separatore per le parti intere e frazionarie del "BRD":

Formato(3.535353, "BRD="".""")
> 3.535353

In alcuni casi può essere utile poter visualizzare qualcos'altro al posto del numero "0": una stringa vuota o "non riempita". Questo ti permette di rendere il parametro "CHN":

Formato(0, "HN=""""")
>

Formatta i campi 1C nel modulo

Abbiamo discusso con te le tecniche che consentono al programmatore di formattare il valore nel linguaggio 1C. Esistono anche meccanismi che consentono di specificare visivamente il formato richiesto, senza programmazione.

Ad esempio, l'utente lavora con il modulo. Il modulo ha un campo che visualizza la data. Possiamo influenzare la rappresentazione di questa data.

Apri le proprietà di questo campo. Per fare ciò, nel thick client, fare clic con il pulsante destro del mouse sul campo e nel thin client, fare clic con il pulsante destro del mouse sul nome del campo nell'elenco dei campi, selezionare Proprietà.
Il campo ha una proprietà "Formato".

Fare clic sul pulsante "..." per configurarlo. Per impostare il formato della data, utilizzare la scheda Data (per un numero, utilizzare la scheda Numero). È possibile selezionare il formato richiesto dall'elenco.

Formatta le celle 1C in forma stampata

Quando sviluppare modulo stampato(stampa di report o documenti), è possibile assegnare un formato cella esattamente come per un campo documento.
Selezioniamo una cella (o più celle contemporaneamente), andiamo alle proprietà, la proprietà "Formato", selezioniamo il formato richiesto.

Formato 1C in SKD

I report ACS consentono di personalizzare il formato 1C sia per il programmatore (al momento della creazione del report) che per l'utente (quando si utilizza il report). Ci sono anche maggiori opportunità attraverso l'uso della formattazione condizionale.

Ciò significa che non solo specifichi quale campo formattare, ma anche in quale condizione (ad esempio, se il valore di questo campo è negativo).

Nella modalità Enterprise, seleziona la voce di menu nel modulo di segnalazione "Cambia variante". Nel report ACS nel thick client, questa voce si trova nel menu "Azioni/Impostazioni".

Nella forma aperta di tutte le impostazioni ACS c'è un'etichetta "Formattazione condizionale". Aggiungi una nuova riga. La riga ha tre colonne:

  • Arredamento. Specificare il formato 1C richiesto: carattere, colore di sfondo o testo, formato 1C per la visualizzazione di numeri e date
  • Condizione. Se questo design viene sempre utilizzato, lascia vuoto questo campo. Altrimenti, specificare il campo e il suo valore. Quindi la formattazione verrà applicata solo in quelle righe in cui questi valori corrispondono. Se devi specificare i valori di più campi contemporaneamente e le condizioni "e/o", aggiungi un gruppo e raggruppa i campi utilizzando i gruppi.
  • Campi formati. Elenco dei campi per i quali verrà applicata la formattazione.

Formato 1C in moduli gestiti

Le stesse regole di formattazione si applicano a qualsiasi modulo elenco tenant gestito. Nel modulo elenco selezionare la voce di menu "Tutte le azioni / Configura elenco".

La scheda Formattazione condizionale.

Seleziona il design e il formato desiderati.

Specificare l'elenco dei campi a cui verrà applicato questo design.