Listeskjema i 1C-bedrift. Hvordan åpne et listeskjema med noe utvalg? Så, hva er utvalg og hvorfor er det

Utvalgsinnstillinger og listeskjemabehandling i 1C 8.x

I den åttende versjonen av 1C dukket det opp mer "harmoniske" funksjoner for å jobbe med dynamiske lister enn i versjon 7.7.

Dynamiske lister skal forstås som former for lister over kataloger, dokumenter og registre. Alle disse objektene som vises på skjermen mens du blar. Listeskjemaer, som vi vet fra forrige artikkel, har standard kommandopaneler med et standard sett med kontrollknapper.

Valgene inkluderer følgende knapper:

Og for mer yngre versjoner 8.x:

Når du åpner et hvilket som helst kontrollpanel for standardlisteskjemaer, kan vi finne standard kontrollknapper for valg på panelet. For 8.1 og 8.2 er de litt forskjellige i utseende, men de ligner på "trakt"-filtre.

I tillegg til valgknapper ble versjon 8.x introdusert viktig funksjon, som var så mangelfull i versjon 7.7: muligheten til å vise, skrive ut eller lagre på disk alle elementene i listen i form av en tabell. For å gjøre dette trenger du ikke lenger be programmereren om å tegne en rapport.

Så, hva er utvalg og hvorfor er det?

Se for deg et klassisk bord:

Den kan ha et hvilket som helst antall rader og kolonner. I hovedsak er en liste over katalogelementer, eller en liste over dokumenter, den samme tabellen.

Ofte er det behov for å velge fra en felles haug og vise flere rader med de ønskede kolonneverdiene:

  • Alle produkter med de første tegnene i artikkelen = 100
  • Alle dokumenter fra påkrevd motpart mv.

Eller omvendt, fjern "forstyrrende" elementer fra listen:

  • Alle varer er utenlandske varer
  • Alle varer med tom momssats.

Det er her utvalgsverktøy kommer til unnsetning. I 1C kan du møte utvalg i mange forskjellige varianter. Men prinsippet vil være det samme overalt: velg rader med de nødvendige verdiene i en eller flere kolonner. Eller fjern linjer med unødvendige verdier i kolonner.

Hovedvalgkontrollknappen er den første til venstre

Den åpner hovedvalgskjemaet for det valgte listeskjemaet

Et eksempel på et skjema for valg av en katalog over anleggsmidler

Hver linje i dette skjemaet tilsvarer en kolonne i det tabellformede listeskjemaet (Ikke alle kolonner vises kanskje på dette skjemaet. Noen kolonner kan ikke brukes i utvalget). Utvalget kan enten være én eller flere kolonner samtidig.

Linjen inneholder navnet på kolonnen med et merke, type sammenligning og verdien for valg.

Verdier for sammenligning kan være forskjellige typer. Hvis kolonne enkel type(nummer, streng, dato), så skriver du bare inn verdien for sammenligning i feltet (Kode = 1000, Navn = del). Hvis kolonne kompleks type(lenke til et katalogelement, dokument, enumerering), så må du i valgverdifeltet velge et element av denne typen.

Type sammenligning

I tillegg til den enkle "kolonnen er lik verdi", kreves det ofte mer fleksible typer sammenligninger.

Dessuten avhenger typene av disse sammenligningene av typen utvalgsverdi. En dato kan kontrolleres ikke bare for likhet, men også for samsvar med et område (dato fra begynnelsen av måneden til slutten av måneden), et tall - for å tilhøre et intervall (sum fra 1000 til 1500). Linjen kan kontrolleres for forekomst (kommentaren inneholder "under rapporten"). I tillegg kan katalogelementer sjekkes for inkludering i en gruppe, men ikke for mer/mindre. Du kan også bruke valg etter flere verdier - for eksempel trenger vi rader som inneholder kolonner med flere verdier.

For enhver type sammenligning "lik" er det en lignende type sammenligning "ikke lik". Dette betyr at når denne typen sammenligning er valgt, vil listen inneholde alle rader bortsett fra de hvis kolonner inneholder verdiene spesifisert i valgverdien. Full liste typer sammenligning:

  • Er lik (alle datatyper)
  • Mer (datoer, tall, strenger)
  • Mer eller lik (datoer, tall, strenger)
  • Mindre enn (datoer, tall, strenger)
  • Mindre eller lik (datoer, tall, strenger)
  • Intervall (4 typer s forskjellige typer forekomster av grenseverdier) (datoer, tall, strenger)
  • Inneholder (strenger)
  • I listen (alle typer)
  • I gruppe (referansetyper)
  • I en gruppe fra listen (referansetyper)

En rekke av de ovennevnte typene tilsvarer motsatte betydninger:

  • Ikke lik
  • Inneholder ikke
  • Ikke på listen
  • Ikke i gruppe
  • Ikke i en gruppe fra listen

På begynnelsen av hver utvalgslinje er det et felt der du kan krysse av eller fjerne merket. Merking av denne boksen betyr at filteret vil bli brukt selv om du ikke har spesifisert en verdi for filteret (det vil bli satt til en tom verdi). Og omvendt - å slå av merket betyr å nekte å bruke utvalg. I dette tilfellet forblir den valgte verdien for utvalget og typen sammenligning fylt ut.

Som vi husker, inneholder kommandopanelet, i tillegg til "hovedtrakten", også andre valgkontrollknapper. Den andre knappen i denne listen er valg etter gjeldende verdi. Denne knappen er veldig praktisk for praktisk bruk, som vi vil diskutere senere. Handlingen er som følger: angi valget etter verdi i gjeldende kolonne. Dette sparer litt tid og lar deg fremskynde mange handlinger. Den tredje knappen er valghistorikk. Når du klikker på den, ser du alle valgene du tidligere brukte på gjeldende liste. Listen lagres selv etter at du er ferdig med å jobbe med programmet. Men bare hvis du avsluttet arbeidsøkten på riktig måte, og ikke ved å starte på nytt eller slå av datamaskinen. Og til slutt deaktiverer den siste knappen alle installerte valg.

Tilpasse utseendet til lister, lagre dem og skrive dem ut.

Alle standard listeskjemaer har kolonne- og utskriftskontrollknapper. Kolonneinnstillinger kan nås fra "handlinger"-menyen ved å høyreklikke på listeskjemaet. Noen ganger er denne knappen plassert på kommandopanelet.

Ved å klikke på det åpnes konfigurasjonsskjemaet:

Synlige kolonner er merket med hake. Du kan deaktivere unødvendige og aktivere usynlige kolonner. Høyre side for gjeldende kolonne viser posisjons- og størrelseskontrollene. Bredden på alle kolonnene kan vanligvis endres ved å plassere markøren i tabelloverskriften på kanten av kolonnene (når markøren har formen ). Hvis det ikke endrer visningen, er endring av størrelse deaktivert i kolonneinnstillingene. Du kan aktivere endring av størrelse i oppsettskjemaet ovenfor (velg kolonnen - Endre størrelse: Endre).

Når mottok du riktig type listen, kan du skrive den ut eller lagre den på disk.

Vi ser etter "vis liste"-knappen ved siden av listeinnstillinger-knappen. Klikk - en dialog åpnes:

Her er også synlige kolonner som skal skrives ut markert med hake. Vi fjerner de unødvendige, aktiverer de nødvendige og klikker OK. Som standard sendes listen ut til et regnearkdokument, og dette regnearkdokumentet vil umiddelbart vises på skjermen. (selv om gourmeter kan sende det til et tekstdokument, er kolonnene i det atskilt med faner). Vær samtidig forsiktig med dynamiske lister (disse er de som vises i skjermdeler og antall elementer er ikke kjent på forhånd). Hvis produktreferanseboken din består av 100 tusen elementer, vil du ganske enkelt ikke vente på at utskriftsskjemaet skal opprettes, eller datamaskinen din vil ikke ha nok minne. Du må enten vite det omtrentlige antallet elementer som listen reflekterer, eller angi utvalget riktig. Slik at listen kan sees med øynene fra begynnelse til slutt. Generelt bør du ikke skrive ut en liste med mer enn 10 000 varer.

Så listen er på skjermen din - nå kan du skrive den ut. Den kan også lagres på disk for overføring eller senere bruk. Som standard lagres den i det interne 1C-formatet i en fil med filtypen *. mxl. For å gjøre dette, i øvre høyre hjørne, velg menyelementet "Fil" og deretter "Lagre". Standard fillagringsdialog åpnes. Du kan bare åpne en slik fil i 1C-miljøet. Dessuten samme versjon av plattformen. ("Fil" - Åpne - velg din tidligere lagrede fil).

Praktiske eksempler:

1. La oss skrive ut en liste over fakturaer opprettet av brukeren Ivanova

Hvis vi ser et dokument opprettet av Ivanova i listen, står vi ganske enkelt på cellen som inneholder "Ivanova" og klikker på velg ved gjeldende celle. Vi venter en stund og ser en liste over dokumenter laget av Ivanova. Samtidig trenger vi ikke alle dokumentene, men bare for to organisasjoner (for eksempel privat gründer "Entreprenør" og Trading House "Complex" fra demodatabasen). Vi trykker på den første hovedvalgknappen, i dialogen finner vi linjen "organisasjon", velg type sammenligning "I listen" (vi trenger to organisasjoner), i verdifeltet trykker vi på valgknappen og velger den i liste 2 behov for organisasjonen. Klikk OK og se hva du ville se i listen. Klikk på visningslisten. La bare kolonnene Nummer, Dato, Beløp, Organisasjon, motpart og klikk trekke tilbake. Listen er klar. Hvis vi ønsker å bytte kolonner («Sum» skal stå sist), åpne listeoppsettskjemaet og «flytt» ønsket kolonne ned eller opp ved hjelp av sorteringspilene.

2. La oss fjerne fra listen over varer i mottaksdokumentet alle varer unntatt de tre som trengs.

La oss si at vi kopierte et dokument. Og vi trenger bare å forlate noen få posisjoner fra hele listen. Nesten hver tabelldel har et utvalg som kan kalles opp med høyre museknapp.

Åpne dialogen, velg "vare" IKKE i listen og velg deretter produktene som skal stå igjen i listen. Klikk OK og se en liste som består av helt unødvendige produkter. Trykk og hold "DEL"-knappen til listen er fullstendig tømt. Høyreklikk deretter på listen og slå av utstyret. I listen ser vi bare de nødvendige produktene.

Hvordan åpne et listeskjema med noe utvalg?

Det er flere måter å åpne et listeskjema med et forhåndsinnstilt utvalg. La oss se på dem i rekkefølge:

1. Den første metoden er at når du åpner skjemaet, kan du angi parameteren Utvalgsskjema, og åpne listeskjemaet med denne parameteren. Utvalgsparameteren representerer strukturen. Navnene på elementene tilsvarer navnene på feltene som valget er gjort med, og verdiene inneholder utvalgsverdiene. Dette er et alternativ for dynamisk listeadministrert skjemautvidelse. Det vil si at den eksisterer for skjemaer hvis hovedattributt er typeattributtet Dynamisk liste, for eksempel listeskjemaer og utvalgsskjemaer.

Ved åpning av skjemaet vil det bli gjort valg basert på det angitte feltet. For eksempel, i følgende eksempel, åpnes en liste over fakturaer med valg av Nummer-feltet, lik 333.

Valgverdi = Ny struktur("Tall", "333");

SelectionParameters = New Structure("Selection", SelectionValue);

OpenForm("Dokument. Kvitteringsfaktura. Listeskjema", Valgalternativer);

2. Du kan åpne et listeskjema uten parametere:

OpenForm("Document.Invoice.ListForm");

Og så, i hendelsesbehandleren til fakturalisteskjemaet Når CreatedOnServer skriv kode som lager et utvalg i en dynamisk liste, som er hovedattributtet til skjemaet:

&På server

Prosedyre når opprettet på server(feil, standardbehandling)

Selection Element = List.Selection.Elements.Add(Type("DataComposition Selection Element"));

SelectionElement.LeftValue = NewDataCompositionField("Tall");

SelectionElement.ComparisonView = DataCompositionComparisonView.More;

SelectionElement.Use = Sant;

SelectionElement.DisplayMode = ElementDisplayModeDataCompositionSettings.Inaccessible;

SelectionElement.RightValue = "000000001";

Sluttprosedyre

Fordelene med denne metoden er at sammenligningstypen for utvalget kan settes ikke bare lik, som i det første tilfellet, men også mer, mindre, etc.

Men denne metoden har også en veldig betydelig ulempe: med dette valget vil skjemaet alltid åpne. Hvor enn hun ble oppringt fra. Derfor bør ikke dette skjemaet angis som hovedskjemaet. Og hvis det likevel er det viktigste, så før du installerer utvalget, er det nødvendig å gi en slags analyse av hvor dette skjemaet åpnes fra. For eksempel å analysere skjemaparametere.

3. Til slutt kan valgbetingelsen plasseres i en egendefinert spørring som velger data for en dynamisk liste. For eksempel må vi åpne en liste over fakturaer som inneholder varen uthevet i varelisten.

For å gjøre dette, i form av en liste over elementer, opprett en kommando og en tilsvarende knapp Kvittering av fakturaer.

La oss fylle ut kjøringsbehandleren for denne kommandoen som følger:

&På klient

Prosedyre Kvitteringer Fakturaer (kommando)

ListForm = GetForm("Document.Invoice.ListForm");

ListForm.FilterByProduct = Items.List.CurrentRow;

ListForm.Open();

Sluttprosedyre

I denne behandleren mottar vi skjemaet for fakturalisten og sender lenken til gjeldende vare i varelisten til skjemaparameteren FilterByProduct og åpner skjemaet med denne parameteren.

Deretter lager vi et dokumentlisteskjema Kjøpsfaktura og lag skjemaattributtet FilterByProduct, som vi vil bruke som skjemaparameter når vi åpner det. La oss nå åpne egenskapspaletten til hovedattributtet til Liste-skjemaet. La oss sette flagget CustomRequest og i køen Listeoppsett klikk Åpne.

Skriv inn følgende forespørselstekst i forespørselsfeltet:

VELGE

Dokumentkvitteringsfakturanummer,

Dokumentkvittering Faktura.Dato

FRA

Document.ReceiptInvoice AS DocumentReceiptInvoice

HVOR

Dokumentkvittering Invoice.Products.Product = &Produkt

I forespørselen bruker vi vareparameteren, som vil motta en lenke til gjeldende linje i varelisten, inneholdt i skjemaparameteren FilterBy Item fakturaliste. For å gjøre dette, i OnOpen-listeskjemaet hendelsesbehandler, vil vi skrive kode for å angi verdien av produktforespørselsparameteren:

&På klient

Åpningsprosedyre (feil)

List.Parameters.SetParameterValue("Produkt", FilterByProduct);

Sluttprosedyre

Her Liste.Alternativer er en liste over parametere for dynamisk listeforespørsel for Liste-attributtet. Verdien til produktparameteren settes lik verdien til skjemaparameteren FilterByProduct.

Som et resultat, ved å klikke på en knapp Kvittering av fakturaer i form av en vareliste vil vi motta en liste over kun de fakturaene som inneholder varene uthevet i dette øyeblikket i nomenklaturlisten.

Et demoeksempel for det tredje alternativet er plassert i katalogen 1CITS/EXE/FAQ/OpenFormWithSelection.dt. Eksemplet ble utført på plattformversjon 8.2.9.356.

Grensesnittutvikling i 1C består av to deler – utvikling av en meny eller skrivebord og utvikling av 1C-skjermformer. Vinduene som brukeren arbeider med i 1C kalles 1C-skjermskjemaer eller rett og slett 1C-skjemaer.

Brukere i programmet jobber med 1C-skjemaer. Dessuten ser brukerne bare 1C-skjemaer. Derfor, fra synspunktet om brukervennlighet i programmet, er dette et av de viktige elementene. Samtidig kan du kaste bort mer tid på å utvikle et 1C-skjema enn å programmere den mest komplekse algoritmen.

En vanlig feil programmerere gjør er å prøve å tegne alt etter deres smak. Gjør bakgrunnen blå og teksten grønn. Eller gult på svart. Eller hvordan han liker det i et annet favorittprogram.

Dessverre er denne tilnærmingen feil, siden brukere er vant til å jobbe med standard 1C-skjemaer, som er flertallet i konfigurasjonen. Å tegne din egen sykkel og merke den med Courier-inskripsjoner som "Copyright Vasya Pupkin" er tydelig i dårlig smak.

Nå skal vi gå gjennom et kort utdanningsprogram om tegning av 1C-skjemaer.

Hva er Forms 1C

Skjema 1C er en metode for presentasjon for brukeren. Vanligvis består et skjema av en rekke felter som må fylles ut og et sett med knapper (menykommandoer) for å kontrollere. De fleste 1C-objekter har Form 1C.

Den 1C tykke klienten bruker "vanlige" 1C-former. Dette betyr at programmereren ganske enkelt tegner et 1C-skjema med musen, akkurat som det gjøres i Visual Studio og andre rammeverk.

1C tynnklienten og 1C webklienten bruker 1C administrerte skjemaer. Dette betyr at størrelsen, 1C-formen og plasseringen av feltene på dem ikke kan endres med musen. De genereres automatisk basert på innstillingene. Vi vil snakke om administrerte 1C-skjemaer i de følgende leksjonene.

De fleste former for 1C-standardkonfigurasjoner i 1C har sin egen standardpresentasjon som er kjent for brukeren.

Hvordan 1C-skjemaer fungerer

Logikken (rekkefølgen) for brukerarbeid i 1C er som følger:

Dermed arbeider brukeren alltid med 1C-skjemaer, starter med 1C-listeskjemaet og går over til 1C-elementskjemaet. Hvis programmereren ikke har tegnet skjemaene, genererer 1C skjemaene som standard. De er naturlig fratatt perfekt skjønnhet og perfeksjon, men de lar deg jobbe.

Et automatisk generert 1C-listeskjema inneholder vanligvis et minimum av felt (henholdsvis kode/navn og dato/nummer). Det automatisk genererte elementskjemaet inneholder vanligvis alle feltene (detaljer) oppført fra topp til bunn.

Oppgaven til 1C-skjemaet er å åpne og vente på brukerhandlinger. Når du handler, reager. Dermed er grunnlaget for 1C-skjemamodulen hendelsesbehandlere. Dette er funksjoner som kalles når brukeren utfører en handling på 1C-skjemaet.

Hvor er 1C-skjemaene plassert?

I 1C Enterprise-modus, når du velger nesten hvilket som helst 1C-objekt (katalog, dokument, rapport, behandling, etc.), vil formen til dette objektet åpnes for deg.

I konfiguratoren, i konfigurasjonsvinduet, velg objektet du trenger, utvide grenen for å se 1C Form-undergrenen.

Et annet alternativ er å åpne objektredigereren (to ganger med musen eller plasser markøren og Enter) og gå til 1C Forms-fanen.

Her er en liste over 1C-skjemaer. Ett av de tilføyde 1C-skjemaene kan legges til som standardskjema (1C-listeskjema, 1C-elementskjema, og så videre).

Oppretting av 1C-skjemaer

For å legge til et nytt 1C-skjema, må du klikke på Legg til-knappen (Ins på tastaturet). For å legge inn en eksisterende, dobbeltklikk på den med musen.

Designeren vil be deg om å velge typen 1C-skjema - 1C-elementskjema, liste. Her kan du legge til eller fjerne kommandopaneler på 1C-skjemaet. Oftest forblir disse innstillingene som standard.

1C-skjemaet åpnes, fylt ut som standard - alle detaljene til 1C-objektet som eksisterer er lagt til det. Du kan krysse av for den spesifikke listen over obligatoriske felt på den andre fanen til designeren.

Unødvendige detaljer kan slettes. For å gjøre dette, velg ett eller flere felt og trykk Del.

For å flytte andre detaljer til den ledige plassen, velg dem på samme måte og dra dem med musen.

For å legge til nye detaljer til 1C-skjemaet, klikk på knappen i Dataplassering-panelet (Skjema/Dataplassering-menyen), merk av i boksene for elementene som må legges til, samt "Sett inn etiketter" og "Plasser automatisk" avmerkingsbokser.

Alternativt kan du ganske enkelt legge til en kontroll ved å klikke på den tilsvarende knappen på panelet nedenfor eller velge Skjema/Sett inn kontroll fra menyen. Klikk på kontrollelementet (feltet) to ganger med venstre museknapp og egenskapene åpnes. «Data»-egenskapen inneholder navnet på attributtet. Her kan du endre eller tildele den.

Kontrollens egenskaper inneholder også avmerkingsbokser for å kontrollere utseendet til kontrollen. Du kan bruke avmerkingsbokser for å aktivere eller deaktivere valg-, rullegardin-, fjern-, synlighets- og tilgjengelighetsknapper.

Nesten alle dokumentskjemaer bruker bokmerker. Å legge til et bokmerke er det samme som å legge til en annen kontroll (se ovenfor), du trenger bare å velge "Panel" -kontrollen. For å legge til en panelside, høyreklikk på den og velg Legg til side. Andre kontroller (felt) dras og slippes ganske enkelt på panelsider.

For å endre størrelsen på 1C-skjemaet, flytt ganske enkelt markøren til kanten av 1C-skjemaet, klikk på venstre museknapp og dra ganske enkelt kanten av 1C-skjemaet.

For at Form 1C skal fungere - dvs. gjorde noe som svar på brukerhandlinger - du må legge til behandlerfunksjoner. Skriv inn egenskapene til et element (ved å dobbeltklikke på det med venstre museknapp) eller selve 1C-skjemaet (tilsvarende på skjemaoverskriften). Helt nederst i egenskapsvinduet er det en seksjon kalt "Hendelser". Velg en praktisk hendelse (for alle felt er det vanligvis "Ved endring", for skjemaet "Ved åpning") og klikk på knappen med et forstørrelsesglass. Dens hendelsesbehandler vil åpne.

For knapper er det det samme å legge til. Men i tillegg til vilkårlige behandlere kan du velge en av standardene for dette skjemaet (for katalogskjemaet er dette noen standardhandlinger, for dokumentskjemaet - andre). Bare velg en av standardhandlingene i "Action"-egenskapen eller klikk på krysset hvis du vil lage din egen behandler.

I forrige leksjon så vi på det for en vanlig (tjukk) klient. I plattformversjon 1C 8.2. De bruker nye skjermskjemaer 1C 8.2. De kalles administrerte skjemaer 1C 8.2.

Administrerte skjemaer 1C 8.2 er fremtiden til 1C. De skiller seg fra vanlige 1C 8.2-skjemaer ved at de genereres automatisk av systemet basert på spesielle innstillinger (“vanlige” skjemaer tegnes ganske enkelt av programmereren etter eget ønske).

Forskjellene i utviklingen av administrerte skjemaer 1C 8.2 fra konvensjonelle er betydelige. Derfor har vi samlet oss i dag for separat å diskutere opprettelse og endring av administrerte skjemaer 1C 8.2.

Administrerte skjemaer 1C 8.2

Hvis du har utviklet 1C-konfigurasjoner før, når du åpner 1C 8.2 administrert skjemaredigering, vil du umiddelbart bli forundret over det faktum at det er umulig å påvirke 1C 8.2-skjemaet i det hele tatt med musen.

Du kan ikke endre 1C 8.2-skjemaet, du kan ikke flytte et element, du kan ikke engang se feltegenskapene som før - ved å dobbeltklikke på feltet på 1C 8.2-skjemaet.

Nå er ikke grunnlaget for å utvikle et 1C 8.2-skjema å binde felt til koordinater på skjemaet, men spesielle innstillinger. Systemet genererer automatisk en kontrollert form 1C 8.2 basert på disse innstillingene.

Innstillingene består av en liste med 1C 8.2-skjemaelementer som ligger i editoren i øvre venstre hjørne. Elementene i skjema 1C 8.2 inkluderer:

  • Forutsetninger
  • Kommandoer (et nytt konsept i 1C 8.2, kan se ut som knapper eller menyelementer)
  • Grupper (for å kombinere detaljer og kommandoer).

Følgelig er innstillingene for disse elementene ikke i egenskapene til feltene, men i egenskapene til disse innstillingselementene (høyreklikkmeny, element Egenskaper).

Hvordan administrerte skjemaer 1C 8.2 fungerer

Å jobbe med administrerte skjemaer 1C 8.2 er annerledes for brukeren. De har flere muligheter, men er uvanlige for de som har jobbet med 1C i lang tid.

Først av alt er arrangementet av de vanlige elementene på 1C 8.2-skjemaet annerledes. Kommandolinjen er alltid øverst.

Venstre side av kommandopanelet kan tilpasses. Den inneholder vanligvis slike standardknapper som Record og Post.

Høyre side av kommandopanelet er den nye standardmenyen i 1C All Actions-skjemaet. Denne menyen lar deg administrere 1C 8.2-skjemaet slik du ønsker, på samme måte som i ACS-rapporten innstillingene lar deg endre utseendet på rapporten betydelig.

Vilkårlige menyelementer 1C Alle handlinger

Avhengig av om dette 1C 8.1-skjemaet tilhører en eller annen, er menyen fylt med elementer som lar deg administrere dette objektet. For eksempel, hvis dette er et kataloglisteskjema, vil det være kommandoer som Opprett eller Rediger.

Element Tilpass menyliste 1C Alle handlinger

Hvis det er en liste på 1C 8.2-skjemaet, har menyen kommandoen Konfigurer liste og Vis liste.
Hvis kommandoen Output list allerede er kjent for deg - den lar deg lagre hvilken som helst liste i 1C i Excel / skrive den ut, så er den andre kommandoen ny.

Som du allerede har lagt merke til, er det ingen valgknapper på listens kommandopanel lenger. I stedet dukket det opp en Finn-knapp, hvis operasjon (samt den for øyeblikket deaktiverte plasseringen av markøren i listen når du skriver) har noen klager.

Funksjonaliteten til Finn-knappen er selvfølgelig ikke sammenlignbar med valg, men de har ikke blitt borte!
De er nå plassert i menyen Tilpass liste. Valg kan nå gjøres av et hvilket som helst felt, og i tillegg til det kan du gjøre sortering og betinget formatering på samme måte som du kan gjøre i ACS-rapporter.

Element Endre menyform 1C Alle handlinger

Endre skjemaelementet lar deg på samme måte endre ikke bare listen på 1C 8.2-skjemaet, men også selve 1C 8.2-skjemaet.

Brukeren kan uavhengig aktivere eller deaktivere synligheten av felt på 1C 8.2-skjemaet, bredde og høyde, aktivering av standardfeltet ved åpning, etc.

Bruke administrerte skjemaer 1C 8.2 og vanlige skjemaer 1C

Som standard brukes vanlige 1C-skjemaer i konfigurasjoner for den tykke (vanlige) 1C-klienten, og administrerte skjemaer brukes i konfigurasjoner for tynn- og nettklientene til 1C. Imidlertid kan begge 1C-formene brukes i alle konfigurasjoner, inkludert samtidig.

For å gjøre dette må du angi konfigurasjonsegenskapene (det øverste elementet i konfigurasjonsvinduet).

I konfigurasjonsegenskapene i 1C 8.2 har det dukket opp to nye avmerkingsbokser som lar deg aktivere ikke-standard bruk av 1C-skjemaer.

Opprette administrerte skjemaer 8.2

Addisjon ny form 1C 8.2 produseres på samme måte som før - ved hjelp av Ins-knappen på tastaturet eller Add-knappen. For å legge inn en eksisterende, dobbeltklikk på den med musen.

Som standard vil skjemaet (vanlig eller administrert) som er installert i konfigurasjonen opprettes (se egenskapen Main launch mode i konfigurasjonsegenskapene. Hvis du har aktivert tillatelse til å bruke begge typer skjemaer i konfigurasjonen - i skjemadesigneren , som åpnes umiddelbart - du kan velge typeskjemaene.

Designeren vil be deg om å velge type skjema - elementskjema, listeskjema. Her kan du legge til eller fjerne kommandopaneler på skjemaet. Oftest forblir disse innstillingene som standard.

Et skjema åpnes, fylt ut som standard - alle detaljene til 1C-objektet som eksisterer er lagt til det. Du kan krysse av for den spesifikke listen over obligatoriske felt på den andre fanen til designeren.

Skjemaredaktøren består av tre seksjoner.

  • I øvre venstre hjørne er det en liste over skjemaelementer. Den består av felt, kommandoer og grupper som lar deg kombinere elementer. Listen over kommandoer kan vises separat på fanen Kommandogrensesnitt.
  • I øvre høyre hjørne er det en liste over tilgjengelige skjemadetaljer og objektdetaljer (åpne krysset ved siden av Objekt-attributtet).
  • Nedenfor er en forhåndsvisning av det resulterende skjemaet.

Du kan dra de tilgjengelige detaljene til venstre og det blir et skjemaelement (et felt på skjemaet).

Hvis du trenger å legge til en knapp eller menyelement, må du opprette en ny kommando på høyre side av fanen Kommandoer. Dette er en innpakning for en funksjon i skjemamodulen. I tillegg til å spesifisere hvilken funksjon som skal kalles, kan du tilordne en representasjon - for eksempel et bilde, samt avhengigheten av synlighet av det funksjonelle alternativet.

Kommandoer dras også til venstre. Hvis forelderen er kommandolinjen, vil det være en kommandolinjeknapp - ellers bare en knapp.

Du kan ikke bare dra og slippe objekt-/skjemaattributter inn i listen over skjemaelementer (felt), men også ganske enkelt legge dem til (Legg til eller Ins-knapp). Spesielt kan du opprette et nytt skjemaobjekt – Gruppe.

Gruppen kan være et kommandopanel (markøren må være på skjemalinjen). Så drar du kommandoer inn i den og de blir knapper.

Gruppen kan være "vanlig". Da er dette en måte å gruppere felt både vertikalt og horisontalt. Gruppenavnet kan fjernes i egenskapene.

En gruppe kan være et panel (side). Den øverste gruppen som legges til er et panel, og de nestede gruppene av denne typen er sider. Felt er allerede dratt inn på sidene.

Unødvendige skjemaelementer fjernes ved å slette skjemaelementer i listen.
Plasseringen av feltet på skjemaet bestemmes av rekkefølgen i listen over elementer (vertikalt) eller ved å bruke grupper (horisontalt). Bredden og høyden settes i egenskapene til skjemaelementet.

Formelementegenskapene er betydelig utvidet og inneholder mange nyttige ting – både utseendekontroll (velg og fjern knapper) og kontroll av standardverdier.

Egenskapene til selve skjemaet, inkludert dets dimensjoner, er satt til rotelementet til skjemaet med samme navn Form.

Hendelsesbehandlere (svar på brukerhandlinger) er nå delt inn i to typer. Gamle – som før er de angitt i egenskapene til skjemaet og feltene (for eksempel OnChange og OnOpening skjemaet). Nye har blitt kommandoer og brukes til menyelementer og knapper.

Skjemaer i 1C:Enterprise er ment for å vise og redigere informasjon som finnes i databasen. Skjemaer kan tilhøre spesifikke konfigurasjonsobjekter eller eksistere separat fra dem og brukes av hele applikasjonsløsningen.

For eksempel en katalog Nomenklatur kan ha flere skjemaer som vil bli brukt til spesifikke formål - redigere et katalogelement, vise en liste osv.:

Sammen med dette kan det være generelle skjemaer, som ikke tilhører spesifikke konfigurasjonsobjekter - generelle skjemaer.

Grunnskjemaer

Hvert konfigurasjonsobjekt kan brukes til å utføre noen standardhandlinger. For en hvilken som helst katalog kan det for eksempel være nødvendig å vise en liste over elementene, vise individuelle elementer i katalogen, vise en gruppe av katalogen, velge elementer og grupper av elementer fra katalogen. For ethvert dokument vil listen over slike handlinger være mye mindre: vise en liste over dokumenter, velge fra en liste over dokumenter og vise et separat dokument.

For å sikre at slike standardhandlinger utføres med dataene til applikasjonsløsningsobjekter, er det for hver av dem et sett med grunnleggende skjemaer som vil bli brukt når du utfører de tilsvarende handlingene. Alle skjemaene som er underordnet dette objektet kan tilordnes som hovedformene. For eksempel i katalogen Nomenklatur Følgende grunnleggende former kan eksistere:

Og dokumentet Mottak av varer og tjenester sammensetningen av hovedformene vil være annerledes:

Derfor, hvis brukeren ønsker å se kataloglisten Nomenklatur eller liste over dokumenter Mottak av varer og tjenester, vil systemet åpne det tilsvarende skjemaet som er angitt som listeskjema for disse objektene.

Autogenererte skjemaer

En viktig funksjon i 1C:Enterprise 8-systemet er mekanismen til autogenererte skjemaer. Denne mekanismen frigjør utvikleren fra å måtte lage alle mulige skjemaer for hvert konfigurasjonsobjekt. Utvikleren trenger bare å legge til et nytt konfigurasjonsobjekt, og selve systemet vil generere de rette øyeblikkene Brukerens arbeid krever de nødvendige skjemaene for å vise informasjonen i dette objektet.

Dermed trenger utvikleren å lage sine egne former for applikasjonsløsningsobjekter bare hvis de må ha forskjeller (forskjellig design eller spesifikk oppførsel) fra skjemaene som genereres automatisk av systemet.

Koble et skjema til data

Hvorvidt et skjema tilhører et bestemt konfigurasjonsobjekt avgjør ikke sammensetningen av dataene som vises i skjemaet. Det faktum at skjemaet tilhører for eksempel en katalog Nomenklatur, lar deg tilordne det som et av hovedskjemaene for denne katalogen, men bestemmer ikke på noen måte hvilke data dette skjemaet vil vise og hvordan dets oppførsel vil være.

For å knytte et skjema til data, brukes skjemadetaljer, som indikerer listen over data som vises av skjemaet. Alle skjemaer har i seg selv samme oppførsel, uavhengig av hvilke data de viser. Imidlertid kan ett av skjemaattributtene utpekes som hovedattributtet for det (det er uthevet med fet skrift), i så fall vil standardoppførselen til skjemaet og dets egenskaper bli supplert avhengig av hvilken type hovedskjemaattributtet er:

For eksempel hvis et dokument er tilordnet som hovedskjemaattributt Mottak av varer og tjenester, så når du lukker skjemaet, vil systemet be om bekreftelse på registrering og posting av dette dokumentet. Hvis du tilordner for eksempel en katalog som hovedattributtet til skjemaet Nomenklatur, så vil ikke en slik bekreftelsesforespørsel vises ved lukking av skjemaet.

Formstruktur

Hovedtrekket til skjemaene er at de ikke er tegnet av utvikleren i detalj, "piksel for piksel". Et skjema i en konfigurasjon er en logisk beskrivelse av skjemaets sammensetning. Og den spesifikke plasseringen av elementer utføres automatisk av systemet når skjemaet vises.

Den viste delen av skjemaet (synlig for brukeren) beskrives som et tre som inneholder skjemaelementer.

Elementer kan være inndatafelt, avmerkingsbokser, radioknapper, knapper osv. I tillegg kan et element være en gruppe som inkluderer andre elementer. En gruppe kan representeres som et panel med en ramme, et panel med sider (bokmerker), selve siden eller et kommandopanel. I tillegg kan elementet være en tabell, som også inkluderer elementer (kolonner). Elementstrukturen beskriver hvordan formen vil se ut.

All funksjonalitet i skjemaet er beskrevet i form av detaljer og kommandoer. Detaljer er dataene som skjemaet fungerer med, og kommandoer er handlingene som skal utføres. Dermed må utvikleren i skjemaeditoren inkludere nødvendige detaljer og kommandoer i skjemaet, lage skjemaelementer som viser dem og om nødvendig ordne elementer i grupper.

Basert på denne logiske beskrivelsen genererer systemet automatisk utseende skjemaer som skal vises til brukeren. I dette tilfellet tar systemet hensyn til ulike egenskaper for de viste dataene (for eksempel type) for å ordne skjemaelementene så praktisk som mulig for brukeren.

Utvikleren kan påvirke arrangementet av elementer med ulike innstillinger. Den kan bestemme rekkefølgen på elementene, angi ønsket bredde og høyde. Dette er imidlertid bare noen tilleggsinformasjon, som hjelper systemet med å vise skjemaet.

I skjemaer kan utvikleren bruke ikke bare kommandoene til selve skjemaet, men også globale kommandoer som brukes i kommandogrensesnittet til hele konfigurasjonen. I tillegg er det mulig å lage parameteriserbare kommandoer som åpner andre skjemaer under hensyntagen til de spesifikke dataene til gjeldende skjema. Dette kan for eksempel være å kalle opp en rapport om saldo på lageret som er valgt i fakturaskjemaet.