Heim - Windows
Holen Sie sich 1s tabellarischen Teil. Wie erhalte ich Daten aus dem tabellarischen Teil von Dokumenten? So erhalten und umgehen Sie ausgewählte Zeilen des tabellarischen Teils

Für viele Objekte in 1C gibt es tabellarische Teile:

  • Verzeichnisse
  • Unterlagen
  • Berichte und Bearbeitung
  • Kontenpläne
  • Charakteristische Typenpläne
  • Berechnungstyppläne
  • Geschäftsprozesse und Aufgaben

Mit tabellarischen Teilen können Sie eine unbegrenzte Menge strukturierter Informationen zu einem Objekt speichern.

Schauen wir uns einige Techniken zum Arbeiten mit tabellarischen Teilen an.

So umgehen Sie den tabellarischen Teil

Um den Tabellenteil zu durchlaufen, können Sie eine Schleife verwenden Für alle

Für jede Zeile aus dem tabellarischen Teil des Zyklus

Report(String. TabularPart-Attribut) ;

EndCycle ;

Bei jeder Iteration in die Variable Linie die nächste Zeile des tabellarischen Abschnitts wird übertragen. Die Werte der Zeilendetails können durch den Ausdruck ermittelt werden Line.AttributeName.

So erhalten und umgehen Sie ausgewählte Zeilen des tabellarischen Teils

Um Informationen aus dem tabellarischen Teil des Objekts anzuzeigen, verwenden Sie ein Formularelement Tabellenfeld. Um die Möglichkeit zu aktivieren, mehrere Zeilen in einem Tabellenfeld auszuwählen, müssen Sie den Wert festlegen Mehrere auf seinem Grundstück Auswahlmodus.

Um eine Liste der ausgewählten Zeilen zu erhalten, verwenden Sie den folgenden Code:

Eine Schleife wird verwendet, um die ausgewählten Zeilen zu durchlaufen. Für alle:

SelectedRows = FormElements. TableFieldName. Ausgewählte Zeilen;

Für jede Zeile aus der Schleife „Ausgewählte Zeilen“.

//Schleifeninhalt

EndCycle ;

So wählen Sie programmgesteuert Zeilen eines tabellarischen Teils (Tabellenfelds) aus und heben deren Auswahl auf

So heben Sie die Auswahl von Zeilen eines Tabellenfelds programmgesteuert auf:

Formularelemente. TableFieldName. Ausgewählte Zeilen. Klar() ;

So wählen Sie alle Zeilen eines Tabellenfelds programmgesteuert aus:

Für jede CurrentRow From TabularPart-Schleife
Formularelemente. TableFieldName. Ausgewählte Zeilen. Add(CurrentRow) ;
EndCycle ;

So löschen Sie den Tabellenteil

TabularPart. Klar() ;

So erhalten Sie die aktuelle Zeile eines Tabellenabschnitts

Die aktuelle Zeile ist die Zeitleiste, in der sich der Benutzer aktuell befindet. Um es zu erhalten, müssen Sie auf das Steuerelement im Formular zugreifen, das dem tabellarischen Teil zugeordnet ist.

Für reguläre Formen sieht der Code so aus:

Formularelemente. TableFieldName. AktuelleDaten;

Für verwaltete Formulare:

Elemente. TableFieldName. AktuelleDaten;

So fügen Sie einem Tabellenabschnitt eine neue Zeile hinzu

Hinzufügen einer neuen Zeile am Ende des Tabellenteils:

NewRow = TablePart. Hinzufügen() ;

Hinzufügen einer neuen Zeile an einer beliebigen Stelle im Tabellenabschnitt (nachfolgende Zeilen werden verschoben):

NewRow = TablePart. Einfügen(Index)
//Index – Nummer der hinzugefügten Zeile. Die Zeilennummerierung beginnt bei Null.

Neue Zeile. Props1 = "Wert" ;

So geben Sie die Details einer Tabellenzeile programmgesteuert ein

Wenn Sie die Details einer tabellarischen Abschnittszeile, die der Benutzer hinzufügt, programmgesteuert ausfüllen müssen, müssen Sie den Ereignishandler für tabellarische Abschnitte verwenden Beim Starten der Bearbeitung.

Die vom Handler erstellte Prozedur verfügt über drei Parameter:

  • Element- enthält ein Kontrollelement TabularField.
  • NeuerString- Boolescher Wert. Enthält Wert WAHR, wenn eine neue Tabellenzeile hinzugefügt wird, und Lüge, wenn der Benutzer mit der Bearbeitung einer bereits vorhandenen Zeile begonnen hat.
  • Kopie- Boolescher Wert. Enthält Wert WAHR, wenn der Benutzer die Zeile kopiert, und Lüge in anderen Fällen.

Schauen wir uns ein Beispiel an. Nehmen wir an, wir müssen die Details des tabellarischen Abschnitts ausfüllen KontoKonto, falls eine neue Zeile hinzugefügt wird. Wenn Sie eine bestehende Zeile bearbeiten, müssen Sie das Buchhaltungskonto nicht ändern.

Prozedur TabularPartAtStartEditing(Element, NewRow, Copy)

//Wenn der Benutzer eine vorhandene Zeile bearbeitet, unternehmen wir nichts
Wenn NICHT NewRow, dann
Zurückkehren;
EndIf ;

//Wenn die Zeile neu ist, legen Sie das Buchhaltungskonto fest
TechString = Artikel. AktuelleDaten; //Die aktuelle Zeile des tabellarischen Teils abrufen
TechString. Buchhaltung = Kontenpläne. Selbsttragend. Erforderliches Konto;
Ende des Verfahrens

Startseite Für Anfänger-Entwickler Programmieren lernen

Wie erhalte ich Daten aus dem tabellarischen Teil von Dokumenten?

Stellen Sie sich beispielsweise eine Situation vor, in der Sie alle im tabellarischen Abschnitt angegebenen Artikelelemente abrufen müssen Waren Unterlagen Verkauf von Waren und Dienstleistungen.

Hierzu können Sie eine Anfrage mit folgendem Text verwenden:

WÄHLEN SIE VERSCHIEDENE Waren- und Dienstleistungsnomenklatur aus dem Dokument „Waren- und Dienstleistungsverkäufe“.

Als Quelle geben wir den tabellarischen Teil der Dokumente an – Tabelle Dokument. Verkauf von Waren und Dienstleistungen. Wir deklarieren das Ausgabefeld als Feld Nomenklatur, das Teil der Quelltabelle ist. Da das gleiche Produktelement natürlich auch mehrfach in den von uns verwendeten Dokumenten vorkommen kann VERSCHIEDEN um nur die unterschiedlichen Zeilen in der Abfrageausgabetabelle abzurufen.

Lassen Sie uns zum Beispiel eine Verarbeitung erstellen Produktliste, wo das Dokument ausgewählt ist Verkauf von Waren und Dienstleistungen, und durch Klicken auf die entsprechende Schaltfläche wird im Nachrichtenfenster eine Liste der sich nicht wiederholenden Elemente der im tabellarischen Teil dieses Dokuments enthaltenen Nomenklatur angezeigt.

Um die Auswahl der Elemente nur auf Elemente aus dem tabellarischen Teil eines bestimmten Dokuments zu beschränken, verwenden wir den Parameter Link in der Bedingung in der Anfrage ( WO...):

WÄHLEN SIE VERSCHIEDENE Nomenklatur für den Verkauf von Waren und Dienstleistungen. WIE den Verkauf von Waren und Dienstleistungen

Zur Abrechnung von Geld und Gütern werden in der Wirtschaft häufig verschiedene Tabellen verwendet. Fast jedes Dokument ist eine Tabelle.

Eine Tabelle listet die Waren auf, die aus dem Lager versendet werden sollen. Eine weitere Tabelle zeigt die Zahlungsverpflichtungen für diese Güter.

Daher nimmt in 1C die Arbeit mit Tabellen einen herausragenden Platz ein.

Tabellen in 1C werden auch „tabellarische Teile“ genannt. Verzeichnisse, Dokumente und andere haben sie.

Die Abfrage gibt als Ergebnis ihrer Ausführung eine Tabelle zurück, auf die auf zwei verschiedene Arten zugegriffen werden kann.

Die erste - schnellere - Auswahl, das Erhalten von Zeilen daraus ist nur der Reihe nach möglich. Die zweite besteht darin, das Abfrageergebnis in eine Wertetabelle hochzuladen und dann wahlfrei darauf zuzugreifen.

//Option 1 – sequenzieller Zugriff auf Abfrageergebnisse

//Hol dir den Tisch
Select = Query.Run().Select();
// Wir gehen alle Zeilen des Abfrageergebnisses der Reihe nach durch
While Select.Next()-Schleife
Bericht(Auswahl.Name);
EndCycle;

//Option 2 – Hochladen in eine Wertetabelle
Request = New Request("SELECT Name FROM Directory.Nomenclature");
//Hol dir den Tisch
Tabelle = Query.Run().Unload().
//weiterhin können wir auch alle Zeilen durchlaufen
Für jede Zeile aus dem Tabellenzyklus
Report(String.Name);
EndCycle;
//oder willkürlich auf Strings zugreifen
Row = Table.Find("Shovel", "Name");

Ein wichtiges Merkmal besteht darin, dass in der Tabelle, die aus dem Abfrageergebnis gewonnen wird, alle Spalten streng typisiert sind. Dies bedeutet, dass Sie durch die Anforderung des Felds „Name“ aus dem Nomenklaturverzeichnis eine Spalte vom Typ „String“ mit einer zulässigen Länge von nicht mehr als N Zeichen erhalten.

Tabelle auf dem Formular (Thick Client)

Der Benutzer arbeitet mit der Tabelle, wenn sie auf dem Formular platziert wird.

Die Grundprinzipien der Arbeit mit Formularen haben wir in der Lektion zu und in der Lektion zu besprochen

Platzieren wir also die Tabelle auf dem Formular. Dazu können Sie die Tabelle aus dem Steuerfeld ziehen. Ebenso können Sie im Menü die Option „Formular/Steuerelement einfügen“ auswählen.

Die Daten können in der Konfiguration gespeichert werden – dann müssen Sie den vorhandenen (zuvor hinzugefügten) tabellarischen Teil des Konfigurationsobjekts auswählen, dessen Formular Sie bearbeiten.

Klicken Sie in der Eigenschaft „Daten“ auf die Schaltfläche „…“. Um die Liste der tabellarischen Teile anzuzeigen, müssen Sie den Objektzweig erweitern.

Wenn Sie den tabellarischen Teil auswählen, fügt 1C selbst Spalten zur Tabelle im Formular hinzu. Vom Benutzer in eine solche Tabelle eingegebene Zeilen werden automatisch zusammen mit dem Nachschlagewerk/Dokument gespeichert.

In derselben Dateneigenschaft können Sie einen beliebigen Namen eingeben und den Typ Wertetabelle auswählen.

Dies bedeutet, dass eine beliebige Wertetabelle ausgewählt wurde. Es werden weder automatisch Spalten hinzugefügt noch automatisch gespeichert, aber Sie können damit machen, was Sie wollen.

Durch einen Rechtsklick auf die Tabelle können Sie eine Spalte hinzufügen. In den Eigenschaften einer Spalte können Sie ihren Namen (zur Referenz im 1C-Code), die Spaltenüberschrift im Formular, die Verbindung mit dem Attribut des tabellarischen Teils (letzteres – wenn keine beliebige Tabelle ausgewählt wird, sondern a tabellarischer Teil).

In den Tabelleneigenschaften des Formulars können Sie angeben, ob der Benutzer Zeilen hinzufügen/löschen kann. Eine erweiterte Form ist das Kontrollkästchen „Nur anzeigen“. Diese Eigenschaften eignen sich zum Organisieren von Tabellen, die zum Anzeigen von Informationen, aber nicht zum Bearbeiten vorgesehen sind.

Um die Tabelle zu verwalten, müssen Sie im Formular ein Befehlsfeld anzeigen. Wählen Sie den Menüpunkt Formular/Steuerelement einfügen/Befehlsleiste.

Aktivieren Sie in den Eigenschaften der Befehlsleiste das Kontrollkästchen „Autofill“, damit die Schaltflächen im Bedienfeld automatisch angezeigt werden.

Tabelle auf Formular (Thin/Managed Client)

Auf einem verwalteten Formular sehen diese Aktionen etwas anders aus. Wenn Sie einen tabellarischen Teil auf dem Formular platzieren müssen, erweitern Sie den Zweig „Objekt“ und ziehen Sie einen der tabellarischen Teile nach links. Das ist alles!

Wenn Sie eine Wertetabelle platzieren müssen, fügen Sie ein neues Formularattribut hinzu und geben Sie in seinen Eigenschaften den Typ an – Wertetabelle.

Um Spalten hinzuzufügen, verwenden Sie das Kontextmenü für dieses Formularattribut und wählen Sie Attributspalte hinzufügen aus.

Ziehen Sie dann auch die Tabelle nach links.

Damit eine Tabelle über eine Befehlsleiste verfügt, wählen Sie in den Tabelleneigenschaften die Werte im Abschnitt Verwendung – Position der Befehlsleiste aus.

Hochladen einer Tabelle nach Excel

Jede auf dem Formular befindliche 1C-Tabelle kann ausgedruckt oder in Excel hochgeladen werden.

Klicken Sie dazu mit der rechten Maustaste auf eine leere Stelle in der Tabelle und wählen Sie Liste.

In einem verwalteten (Thin) Client können ähnliche Aktionen über den Menüpunkt Alle Aktionen/Liste anzeigen durchgeführt werden.



 


Lesen:



Position der Köpfe auf der Antenne

Position der Köpfe auf der Antenne

Der Artikel enthüllt die wichtigsten Methoden zur Bestimmung des Azimuts mit einem Magnetkompass und die Orte seines möglichen Einsatzes. Verwendung...

So laden Sie einen intelligenten Assistenten für ein Android-Gerät herunter und konfigurieren ihn

So laden Sie einen intelligenten Assistenten für ein Android-Gerät herunter und konfigurieren ihn

Aktualisierungsdatum: 05.08.2017 09:22:20 Neueste Version: Kompatibilität: von Android 4.0.3-4.0.4 bis Android 6.0 Anwendungsrechte: Modi ändern...

Optionen „Überall zu Hause“ und „Überall zu Hause in Russland“ MTS - Beschreibung, Kosten, Verbindung

Optionen „Überall zu Hause“ und „Überall zu Hause in Russland“ MTS - Beschreibung, Kosten, Verbindung

Russland nimmt ein riesiges Gebiet unseres Planeten ein. Viele Russen sind mit häufigen Reisen durch ihr Heimatland konfrontiert: Geschäftsreisen, Reisen ...

So stellen Sie ein Windows-Benutzerkennwort wieder her oder setzen es zurück

So stellen Sie ein Windows-Benutzerkennwort wieder her oder setzen es zurück

Wenn Sie plötzlich das Passwort für Ihr Windows-Konto vergessen haben, bleibt Ihnen nichts anderes übrig, als nach einer Möglichkeit zu suchen, es zurückzusetzen oder festzulegen ...

Feed-Bild RSS