Indeksirana tabela 1c 7.7. Razred ponudnika podatkov

Nov stolpec

Sintaksa: Nov stolpec (strColumnName)

Opcije:
  • StreamNameColumns- vrsta: niz. ID stolpca, ki ga želite ustvariti. V identifikatorju stolpca lahko uporabite poljubne simbole, vendar ne pozabite, da se simboli »-«, »*«, »#«, »^« in »&« uporabljajo kot modifikatorji pri sestavljanju indeksnih izrazov, indeks pa bo zgrajen na stolpcih s takimi simboli nemogoče.

Vrne: vrsta: številka. Številka ustvarjenega stolpca.

Opis: Ustvari stolpec v tabeli.

Preimenuj stolpec / Preimenuj stolpec

Sintaksa: PreimenujColumn(Column, strNewColumnName)

Opcije:
  • Stolpec
  • pageNewNameColumns- vrsta: niz. Nov identifikator stolpca.

Opis: Preimenuje stolpec tabele.

Število stolpcev/število stolpcev

Sintaksa:ŠteviloStolpcev()

Vrne: vrsta: številka. Število stolpcev v tabeli.

Opis: Vrne število stolpcev v tabeli.

Ime stolpca

Sintaksa: ColumnName(Column)

Opcije:
  • Stolpec- tip: niz, število. Identifikator ali številka stolpca.

Vrne: tip: niz. ID stolpca. Če takega stolpca ni, se sproži izjema.

Opis: Vrne identifikator podanega stolpca, kot je bil določen v metodi NewColumn().

Številka stolpca

Sintaksa:Številka stolpca (stolpec)

Opcije:
  • Stolpec- tip: niz, število. Identifikator ali številka stolpca.

Vrne: vrsta: številka. Številka stolpca.

Opis: Vrne številko podanega stolpca.

Nova vrstica / Nova vrstica

Sintaksa: Nova vrstica()

Vrne: vrsta: številka. Številka ustvarjene vrstice.

Opis: Ustvari novo vrstico na koncu tabele.

RemoveRows

Sintaksa: DeleteRows([Index])

Opcije:
  • KazaloČe je parameter podan in je filter nastavljen na ta indeks, bodo vrstice, ki izpolnjujejo pogoje filtra, izbrisane.

Opis: Odstrani vrstice iz tabele. Če je določen indeks, se pri brisanju upošteva uporabljeni filter.

Število vrstic / Število vrstic

Sintaksa:Število vrstic ([Index = ""], [flOnlyUnique = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Če je parameter podan in je filter nastavljen na ta indeks, se upoštevajo le vrstice, ki izpolnjujejo pogoje filtra.
  • flOnlyUnique- tip: Številka. Zastavica za upoštevanje samo edinstvenih vrednosti indeksa.

Vrne: vrsta: številka. število vrstic v tabeli.

Opis: Vrne število vrstic v tabeli.

Številka vrstice / Številka vrstice

Sintaksa:Številka vrstice (indeks)

Opcije:
  • Kazalo- tip: niz, število. identifikator ali indeksno številko.

Vrne: vrsta: številka. Trenutna številka vrstice pri podanem indeksu. Če vrstica ni izbrana, potem 0.

Opis: Vrne trenutno številko vrstice v izboru na podanem indeksu.

Pospravi

Sintaksa: Počisti()

Opis: Popolno čiščenje mize. Vsi indeksi, vrstice in stolpci so izbrisani.

AddIndex / AddIndex

Sintaksa: AddIndex(strIdentifier, strExpression, [hOnlyUniqueValues ​​​​= 0])

Opcije:
  • strID- vrsta: niz. ID ustvarjenega indeksa;
  • pageExpression- vrsta: niz. Indeksni izraz. Indeksni izraz je sestavljen iz z vejicami ločenega seznama identifikatorjev stolpcev. Če je pred imenom stolpca znak "-", se razvrščanje izvede v obratnem vrstnem redu. Če je pred imenom stolpca znak "*", se razvrščanje izvede glede na notranjo predstavitev predmeta. Če je pred imenom stolpca znak »#«, sta presledka na levi in ​​desni strani odrezana pred primerjavo nizov. Če je pred imenom stolpca znak "^", se nizi primerjajo na način, ki ne razlikuje med velikimi in malimi črkami. Modifikatorje za razvrščanje (»-«, »*«, »#«, »^«) je mogoče uporabiti v poljubni kombinaciji. Indeksni izraz je lahko prazen niz - to je enakovredno razvrščanju po številki vrstice ali brez razvrščanja (na tak indeks ni mogoče namestiti filtra).
  • withOnlyUniqueValues- vrsta: Številka. Če je 1, bodo v indeks vključene samo vrstice, ki vsebujejo edinstvene vrednosti indeksa. Vrstice s podvojenimi indeksi bodo prezrte in ne bodo vključene v operacije ponovitve vrstice, seštevanja, zgibanja, razkladanja ali nalaganja.

Vrne: vrsta: številka. Številka ustvarjenega indeksa.

Opis: V tabelo doda indeks.

Število indeksov / IndexCount

Sintaksa: NumberIndex()

Vrne: vrsta: številka. Število indeksov v tabeli.

Opis: Vrne število indeksov v tabeli.

IndexName / IndexName

Sintaksa: IndexName(Index)

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.
Vrne: tip: niz. Ime indeksa. Če indeks ni prisoten v tabeli, se sproži izjema.

Opis: Vrne ime indeksa.

IndexExpr / IndexExpr

Sintaksa: IndexExpression(Index)

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.
Vrne: tip: niz. Izraz indeksa. Če indeks ni prisoten v tabeli, se sproži izjema.

Opis: Vrne indeksni izraz za podani indeks.

IndexNumber

Sintaksa: IndexNumber(Indeks)

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.
Vrne: vrsta: številka. Indeksna številka. Če indeksa ni v tabeli, funkcija vrne 0.

Opis: Vrne številko indeksa.

Razvrsti

Sintaksa: Razvrsti (strExpression)

Opcije:
  • pageExpression- vrsta: niz. Indeksni izraz. Indeksni izraz je sestavljen iz z vejicami ločenega seznama identifikatorjev stolpcev. Če je pred imenom stolpca znak "-", se razvrščanje izvede v obratnem vrstnem redu. Če je pred imenom stolpca znak "*", se razvrščanje izvede glede na notranjo predstavitev predmeta. Če je izraz indeksa prazen niz, potem je razvrščanje onemogočeno (filtra ni mogoče namestiti na tak indeks).

Opis: Spremenite razvrščanje v glavnem indeksu.

IndexIsUnique

Sintaksa: IndexUnique([Index = ""])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.

Vrne: vrsta: številka. 1 - v tabeli ni vrstic s podvojenimi vrednostmi ključev; 0 - tabela vsebuje vrstice z enakimi vrednostmi ključev.

Opis: preveri, ali je indeks edinstven.

UniqueKeyCount

Sintaksa:Število edinstvenih ključev ([Indeks = ""])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.

Vrne: vrsta: številka. Število edinstvenih ključev.

Opis: vrne število edinstvenih ključev pri podanem indeksu.

KeyValueCount

Sintaksa: NumberofKeyValues([Index = ""], Key)

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.
  • Ključ

Vrne: vrsta: številka. Število vrstic s podanim ključem.

Opis: vrne število vrstic, za katere je vrednost ključa enaka parametru Key.

FindRow / FindRow

Sintaksa: FindRow(indeks, ključ, [hFindLast = 0], [hPosition = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.
  • Ključ- tip: poljubno. Če je indeks zgrajen na enem stolpcu - potem iskalna vrednost. Če je indeks v več stolpcih, mora biti to seznam vrednosti, ki vsebuje vrednosti ključnih stolpcev, določenih v metodi AddIndex().
  • hFindLast- vrsta: Številka. Če je 1, bo najdena zadnja vrstica z ujemajočo se vrednostjo ključa.
  • hPoložaj

Vrne:

Opis: Poiščite niz, ki se natančno ujema s ključem.

FindNearestMore / FindNearestGE

Sintaksa: FindNearestMore(Key, [Index = ""], [hPosition = 0])

Opcije:
  • Ključ- tip: poljubno. Če je indeks zgrajen na enem stolpcu - potem iskalna vrednost. Če je indeks v več stolpcih, mora biti to seznam vrednosti, ki vsebuje vrednosti ključnih stolpcev, določenih v metodi AddIndex().
  • Kazalo
  • hPoložaj- tip: Številka. Če je 1, bo kazalo, če je iskanje uspešno, postavljeno v najdeno vrstico. Če je bila izbira odprta pred izvedbo metode (z uporabo metode SelectRows), se prestavi na najdeno vrednost. Če izbor ni bil odprt, se odpre, po uspešnem iskanju pa lahko uporabimo metode GetRow(), NextRow() in PreviousRow(). Tudi glavni indeks se spreminja.

Vrne: vrsta: številka. Številka najdene vrstice. Če ni najdeno nič, potem 0.

Opis: Poiščite niz, ki je enak ali večji od ključa.

FindNearestLess / FindNearestLE

Sintaksa: FindNearestLess(Key, [Index = ""], [hPosition = 0])

Opcije:
  • Ključ- tip: poljubno. Če je indeks zgrajen na enem stolpcu - potem iskalna vrednost. Če je indeks v več stolpcih, mora biti to seznam vrednosti, ki vsebuje vrednosti ključnih stolpcev, določenih v metodi AddIndex().
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • hPoložaj- tip: Številka. Če je 1, bo kazalo, če je iskanje uspešno, postavljeno v najdeno vrstico. Če je bila izbira odprta pred izvedbo metode (metoda SelectRows), se prestavi na najdeno vrednost. Če izbor ni bil odprt, se odpre, po uspešnem iskanju pa lahko uporabimo metode GetRow(), NextRow() in PreviousRow(). Tudi glavni indeks se spreminja.

Vrne: vrsta: številka. Številka najdene vrstice. Če ni najdeno nič, potem 0.

Opis: Poiščite niz, ki je enak ali manjši od ključa.

SetFilter / SetFilter

Sintaksa: SetFilter(KeyMin, KeyMax, [Index = ""], [hOnlyUnique = 0], [hInversion = 0])

Opcije:
  • KeyMin- tip: poljubno. Spodnja meja filtra. Nastavi se na enak način kot pri metodi FindString().
  • KeyMax- tip: poljubno. Zgornja meja filtra. Nastavi se na enak način kot pri metodi FindString().
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • OnlyUnique- vrsta: Številka. Če je 1, bodo v izbor vključene samo vrstice z edinstveno ključno vrednostjo.
  • hInverzija- vrsta: Številka. 0 - normalni filter, 1 - inverzni filter.

Če je indeks zgrajen na enem stolpcu, se lahko vrednost stolpca uporabi kot ključ. Če je indeks v več stolpcih, mora biti ključ ValueList, ki vsebuje vrednosti ključnih stolpcev, določenih v metodi AddIndex().

Enega od ključev lahko izpustite – v tem primeru bo kot izpuščena vrednost samodejno uporabljena najmanjša/največja možna vrednost. Tisti. filter bo imel odprt rob.

Opis: namesti dinamični filter v tabelo pri podanem indeksu. Filter vpliva na delovanje metod: InStart(), SelectRows(), InEnd(), GetRow(), NextRow(), PreviousRow(), Collapse(), Total(), FillColumn(), Unload(), Load (), Spoji().

Podnabor

Sintaksa: Podnabor(swKey, hNumberFixColumns, [Index = ""])

Opcije:
  • szKey- tip: Seznam vrednosti. Seznam, ki vsebuje vrednosti indeksnih stolpcev, ki jih je treba popraviti.
  • hNumberFixColumns- tip: Številka. Število stolpcev s fiksnim indeksom
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.

Opis: nastavi filter, ki določa vrednosti prvih stolpcev indeksa.

TZ.AddIndex("in1", "k1, k2"); szKey = CreateObject("Seznam vrednosti"); szKey.AddValue(5); TZ.Subset(szKey, 1, "in1");

Posledično bo vzorec vseboval samo tiste vrstice, katerih stolpec k1 = 5.

DisableFilter / DropFilter

Sintaksa: DisableFilter([Index = ""])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka.

Opis: izklopi filter pri podanem indeksu.

InStart / FirstRow

Sintaksa: BStart([Index = ""], [flOnlyUnique = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • OnlyUnique

Vračila

Opis: je postavljen pred prvo vrstico navedenega indeksa, tako da je metoda NextRow() postavljena v prvo vrstico.

Izberite Vrstice

Sintaksa: SelectRows([Index = ""], [flOnlyUnique = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • OnlyUnique- tip: Številka. Zastavica vzorčenja na podlagi edinstvenih vrednosti. Zastavica vpliva na rezultat vseh nadaljnjih klicev metod GetRow(), NextRow() in PreviousRow() za ta izbor.

Vračila vrsta: številka. 1 - operacija uspešno zaključena, 0 - izbor je prazen.

Opis: je postavljen pred prvo vrstico podanega indeksa, zato je metoda GetRow() postavljena v prvo vrstico.

LastRow

Sintaksa: ATend([Indeks = ""], [flOnlyUnique = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • OnlyUnique- tip: Številka. Zastavica vzorčenja na podlagi edinstvenih vrednosti. Zastavica vpliva na rezultat vseh nadaljnjih klicev metod GetRow(), NextRow() in PreviousRow() za ta izbor.

Vračila vrsta: številka. 1 - operacija uspešno zaključena, 0 - izbor je prazen.

Opis: je postavljena za zadnjo vrstico navedenega indeksa, tako da je metoda PreviousRow() postavljena v zadnjo vrstico.

Naslednja vrstica / Naprej

Sintaksa: NextRow([Index = ""], [hOnlyUnique = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • OnlyUnique

Vračila

Opis:

Opomba: edinstvena izbirna zastavica, nastavljena na 1 v metodah BStart() in BEnd(), ima prednost pred zastavico te metode.

GetRow / GetRow

Sintaksa: GetString([Index = ""], [hOnlyUnique = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • OnlyUnique- vrsta: Številka. 1 - pridobljena bo naslednja vrstica z drugačno vrednostjo ključa, vse podvojene vrstice bodo preskočene.

Vračila vrsta: številka. 1 - operacija je bila uspešno zaključena, 0 - ni več vrstic.

Opis: premakniti na naslednjo indeksno vrstico.

Opomba:

PreviousLine / Previous

Sintaksa: PreviousLine([Index = ""], [hOnlyUnique = 0])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • OnlyUnique- vrsta: Številka. 1 - pridobljena bo naslednja vrstica z drugačno vrednostjo ključa, vse podvojene vrstice bodo preskočene.

Vračila vrsta: številka. 1 - operacija je bila uspešno zaključena, 0 - ni več vrstic.

Opis: premakniti na prejšnjo indeksno vrstico.

Opomba: edinstvena izbirna zastavica, nastavljena na 1 v metodah BStart() in BEnd(), ima prednost pred zastavico te metode.

GetValue

Sintaksa: GetValue([hRow = EmptyValue], Column)

Opcije:
  • hString- vrsta: Številka. Številka vrstice. Če številka vrstice ni navedena, se vzame trenutna vrstica.
  • Stolpec- tip: niz, število. Identifikator ali številka stolpca.

Vračila tip: kateri koli. Vrednost celice tabele.

Opis: vrne vrednost v podani celici tabele.

SetValue

Sintaksa: SetValue([hRow = EmptyValue], stolpec, vrednost)

Opcije:
  • hString- vrsta: Številka. Številka vrstice. Če številka vrstice ni podana, je nastavljena vrednost v trenutni vrstici.
  • Stolpec- tip: niz, število. Identifikator ali številka stolpca.
  • Pomen- tip: poljubno. Nova vrednost celice.

Opis: nastavi vrednost podane celice.

Set

Sintaksa: Set(hRow, Column, Value)

Opis: sinonim za metodo SetValue().

Strni / Združi po

Sintaksa: Strni (strColumnsCollapse, strColumnsSum [, ExistingIndexName = ""])

Opcije:
  • LinesColumnsConvolution- vrsta: niz. Seznam stolpcev, po katerih bo izvedeno zbiranje. Ta vrstica je popolnoma enaka izrazu indeksa v metodi AddIndex(). Pri skupnem pregledu se tabela najprej indeksira s tem izrazom, nato pa se vrstice z enakim indeksom seštejejo. Rezultat se vedno postavi v prvo vrstico po številki, vse ostale vrstice se izbrišejo.
  • LineColumnsAmount- vrsta: niz. Seznam stolpcev, ki jih je treba sešteti. Ločilo je znak ",". Presledki so prezrti.
  • ExistingIndexName- tip: niz, število. Če je podano ime indeksa, se Strni stolpce ne upošteva, strnitev pa se izvede pri podanem indeksu. Pri konvoluciji sodelujejo samo tiste vrstice, ki so vključene v filter.

Opis: strne tabelo po stolpcih<КолонкиСвёртки>, seštevanje vrednosti v stolpcih<КолонкиСумм>. Stolpci niso vključeni v<КолонкиСвёртки>in<КолонкиСумм>se ne odstranijo iz mize. Konvolucija je možna tudi z uporabo obstoječega indeksa - ne izgubljamo časa za izdelavo začasnega indeksa, selektivna konvolucija pa je možna z uporabo trenutnega filtra indeksa.

Skupaj / vsota

Sintaksa: Skupaj (Vsota stolpcev, [Indeks = ""])

Opcije:
  • ColumnAmounts
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.

Vračila

Opis: izračuna znesek za navedeni stolpec ob upoštevanju indeksnega filtra.

TotalByRange / SumByRange

Sintaksa: TotalByRange(Stolpec vsote, [Indeks = ""], KeyMin, KeyMax)

Opcije:
  • ColumnAmounts- tip: niz, število. Stolpec, za katerega želite pridobiti znesek.
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • KeyMin- tip: poljubno. Spodnja meja razpona. Nastavi se na enak način kot pri metodi FindString().
  • KeyMax- tip: poljubno. Zgornja meja razpona. Nastavi se na enak način kot pri metodi FindString().

Vračila vrsta: številka. Znesek v določenem stolpcu.

Opis: izračuna znesek v podanem stolpcu in poda obseg seštevka. Funkcija ne upošteva nameščenih filtrov in ne namešča trajnih filtrov.

TotalByNode/NodeSum

Sintaksa: TotalByNode(SumColumn [, Index])

Opcije:
  • ColumnAmounts- tip: niz, število. Stolpec, za katerega želite pridobiti znesek.
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.

Vrne: vrsta: številka. Znesek v določenem stolpcu. Če izbor ni aktiven (ni trenutnega vozlišča), vrne 0.

Opis: izračuna vsoto za podani stolpec za trenutno vozlišče indeksnega drevesa. Smiselno je, če indeks ni edinstven in morate izračunati skupno vrednost za trenutni ključ.

TZ.AddIndex("Priimek", "Priimek", 0); TZ.FindString("Priimek", "Ivanov", 0, 1); //postavimo se na vozlišče, ki vsebuje vse vrstice s priimkom Ivanov Sum = TZ.TotalByNode("Sum", "Last Name"); //vrne 420 (100 + 120 + 200) TK.FindString("Priimek", "Petrov", 0, 1); //postavimo se na vozlišče, ki vsebuje vse vrstice s priimkom Petrov Sum = TZ.TotalByNode("Vsota", "Priimek"); //vrne 1100 (500 + 600)

skupina

Sintaksa: Skupina (strGroups, strColumnsSum, [hDecryptionLastLevel = 0])

Opcije:
  • skupinaGroups- vrsta: niz. Niz, ki opisuje želeno strukturo združevanja. Navedeno v obrazcu<ИмяИндекса1>: <ИндексноеВыражение1> [; <ИмяИндекса2>: <ИндексноеВыражение2>...]. IndexExpression je niz v enakem formatu kot za metodo AddIndex(), z enim dodatkom: če je znak »&« prisoten na seznamu modifikatorjev stolpcev, bodo vsote za skupine imenikov izračunane za ta stolpec. Na vsaki ravni združevanja je lahko samo en stolpec s takim modifikatorjem.
  • LineColumnsAmount- vrsta: niz. Vrstica s stolpci, po katerih je treba izračunati zneske.
  • hDešifriranje zadnje stopnje- vrsta: Številka. 1 - v vsaki vrstici zadnjega nivoja združevanja bo tabela z dešifriranjem, ki vsebuje vrstice izvirne tabele v nedotaknjeni obliki. 0 - zadnja raven bo strnjena.

Opis: ustvari tabelo z drevesno strukturo v skladu z združevanjem. Na vsaki ravni združevanja ostanejo samo edinstvene vrednosti na ustreznem indeksu. Stolpci vsot vsebujejo vsote za vse vrstice z ujemajočo se ključno vrednostjo. Vrstice z ujemajočimi se ključnimi vrednostmi se zapišejo v tabelo, ki je postavljena v stolpec Potomci - ta stolpec se ustvari med postopkom združevanja.

Primer: na vhodu imamo tabelo

združi ga:

TZ.Group("Priimek: Priimek; Ime: Ime", "Znesek");

in dobite tabelo, kot je ta (stolpec TzDescendants prikazuje vsebino tabele TzDescendants):

Pri združevanju je možno izračunati tudi zneske po skupinah imenikov - za to morate na seznamu modifikatorjev indeksa določiti »&«. Če ima tabela stolpec z imenom "<ИмяКолонкиСправочника>_Parent", potem bo nadrejeni element vzet iz tega stolpca - to zmanjša število klicev v bazo podatkov in znatno poveča zmogljivost. Končna tabela bo organizirana v obliki drevesa, ki natančno ponavlja strukturo imenika Naslednja raven združevanja se nahaja v listih tega drevesa (tj. v vrsticah, ki niso skupine), je v tabelo dodan stolpec "__ThisGroup__", v katerem je 1. je zapisan za vse skupine, dodan pa je tudi stolpec "__Level__", ki se zapolni z vrednostjo skupine imenikov (za elemente se zapiše prazna vrednost). __Stopnja__".

FillRow / FillRow

Sintaksa: FillRow([hRowNumber = 0], Vir, [hSourceRowNumber = 0], [hColumnNames = 0])

Opcije:
  • hLine Number- vrsta: Številka. Številka vrstice, ki jo je treba izpolniti. če<= 0, то заполняется текущая строка.
  • Vir- tip: IndexedTable, Table of Values, List of Values. Vir podatkov za zapolnitev vrstice.
  • hSource Številka vrstice- tip: Številka. Številka vrstice v izvorni tabeli. Privzeto se zavzame trenutna vrstica v vnaprej določenem indeksu. Če je vir Seznam vrednosti, se ta parameter ne upošteva.
  • hBy Imena stolpcev- vrsta: Številka. 0 - vrednosti iz vira se kopirajo s številkami stolpcev; 1 - vrednosti se kopirajo po imenih stolpcev. Če prejemnik nima stolpca z istim imenom, se vrednost ne kopira. Če je vir seznam vrednosti, se imena stolpcev štejejo za simbolične predstavitve vrednosti.

Opis: zapolni vrstico tabele iz vrstice v drugi tabeli ali s seznama vrednosti.

FillColumn (možnost 1)

Sintaksa: FillColumn([Index = ""], Stolpec, Vir, [SourceIndex = ""], [SourceColumn = ""])

Opcije:
  • Kazalo
  • Stolpec
  • Vir- vrsta: IndexedTable. Vir podatkov za izpolnitev stolpca.
  • Indeks vira- tip: niz, število. Identifikator ali indeksna številka, po kateri so razvrščene in filtrirane vrstice izvorne tabele. Privzeto je primarni indeks.
  • Izvorni stolpec- tip: niz, število. Identifikator ali številka stolpca, iz katerega bodo vzete vrednosti. Če parameter ni podan, je izvorni stolpec določen s parametrom Stolpec.

Opis: zapolni stolpec tabele iz stolpca v drugi indeksirani tabeli.

FillColumn (možnost 2)

Sintaksa: FillColumn([Index = ""], Stolpec, Vir, [SourceColumn = ""])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka, po kateri so razvrščene in filtrirane vrstice tabele, ki se polni. Privzeto je primarni indeks.
  • Stolpec- tip: niz, število. Identifikator ali številka stolpca, ki ga je treba izpolniti.
  • Vir- tip: Tabela vrednosti, Seznam vrednosti. Vir podatkov za izpolnitev stolpca.
  • Izvorni stolpec- številka ali identifikator stolpca, iz katerega bodo vzete vrednosti. Če parameter ni podan, je izvorni stolpec določen s parametrom Stolpec. Za seznam vrednosti je parameter prezrt.

Opis: zapolni stolpec tabele iz stolpca v drugi tabeli (tabela vrednosti) ali seznam vrednosti.

FillColumn (možnost 3)

Sintaksa: FillColumn([Index = ""], Stolpec, Vrednost)

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka, po kateri so razvrščene in filtrirane vrstice tabele, ki se polni. Privzeto je primarni indeks.
  • Stolpec- tip: niz, število. Identifikator ali številka stolpca, ki ga je treba izpolniti.
  • Pomen- tip: katerikoli, razen IndexedTable, ValueTable, ValueList. Vrednost, s katero bo zapolnjen stolpec.

Opis: zapolni stolpec tabele z isto vrednostjo.

Razbremenitev

Sintaksa: Unload(Receiver [, Index = ""] [, Columns = ""] [, onlyUnique = 0])

Opcije:
  • Sprejemnik- vrsta: Indeksirana tabela, tabela vrednosti, dokument, seznam vrednosti, nedefinirano. Spremenljivka, v katero bo naložena tabela. Če je to dokument, se izpolni njegov tabelarični del. Če je tip Nedefiniran, se ustvari tabela tipa IndexedTable.
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks.
  • Stolpci- tip: niz, število. Seznam stolpcev, ločenih z vejicami ali številko stolpca, ki ga je treba razložiti. Če ni podana nobena vrednost ali je podan prazen niz, je parameter prezrt.
  • OnlyUnique- vrsta: Številka. Označite za nalaganje samo edinstvenih vrednosti.

Opis: odloži trenutno tabelo v drugo tabelo ali v novo. Če ciljna tabela obstaja, je popolnoma počiščena. Med razkladanjem se indeksi ne kopirajo. Raztovarjanje se izvede ob upoštevanju indeksa in filtra.

obremenitev

Sintaksa: Naloži(Vir, [Indeks = ""], [Stolpci = ""])

Opcije:
  • Vir- tip: IndexedTable, Value Table, Document. Tabela, iz katere bodo naloženi podatki. Če je vrsta Dokument, se bo naložil tabelarični del dokumenta.
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka v izvorni tabeli. Privzeto je primarni indeks. Če je parameter Izvor tipa Dokument, se Indeks interpretira kot niz, ki vsebuje seznam polj v tabelarnem delu dokumenta. Če je Vir tipa ValueTable, potem je ta parameter prezrt.
  • Stolpci- tip: niz, število. Seznam stolpcev, ločenih z vejicami ali številko stolpca za nalaganje v izvorno tabelo. Določa seznam stolpcev, ki bodo naloženi v tabelo. Če ni podana nobena vrednost ali je podan prazen niz, je parameter prezrt. Če je vir vrsta dokumenta, je ta parameter prezrt (uporabite parameter Index).

Opis: naloži podatke iz navedene tabele glede na indeks. Trenutna tabela je pred nalaganjem popolnoma počiščena. Indeksi se ne kopirajo.

LoadQuery

Sintaksa: LoadRequest(Zahteva, [hFlag = 0], [hTotals = 1])

Opcije:
  • Prošnja- vrsta: Zahteva. Poizvedba, iz katere bodo naloženi podatki.
  • hFlag- vrsta: število, niz. 0 - vrednosti skupin in funkcij (privzeto); 1 - vrednosti skupin in funkcij, dodatne spremenljivke; 2 - vrednosti vrstnih redov skupin in funkcij; 3 - vrednosti naročanja skupin in funkcij, dodatne spremenljivke; Vrstica - »Postavka (1), Postavka (2), Postavka, Skladišče, Prihodek, Izhod«, kjer je Postavka (1) vrednost prvega naročila skupine »Postavka«.
  • rezultate- vrsta: Številka. 0 - ne prikaže rezultatov združevanja; 1 - prikaz rezultatov združevanja na vrhu (privzeto); 2 - prikaz rezultatov po skupinah od spodaj; 3 - prikaz rezultatov združevanja na vrhu in na dnu.

Opis: naloži podatke iz navedene zahteve. Trenutna tabela je pred nalaganjem popolnoma počiščena.

InnerJoin

Sintaksa: InnerJoin(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Opcije:
  • lineColumnsLeftIT
  • Prav IT
  • IndexRightIT lineColumnsLeftIT).
  • pageColumnsRightIT <ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст> <ИмяКолНазн> <ИмяКолИст> <ИмяКолНазн>.

Opis: Notranja pridružitev lineColumnsLeftIT pageColumnsRightIT. Če vrstica v levi tabeli ni najdena v desni tabeli, se vrstica v levi tabeli izbriše.

LeftJoin

Sintaksa: LeftConnection(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Opcije:
  • lineColumnsLeftIT- vrsta: niz. Stolpci, katerih vrednosti bodo uporabljene za iskanje vrstice v desni tabeli.
  • Prav IT- vrsta: IndexedTable. Priložena tabela.
  • IndexRightIT- tip: niz, število. Ime ali indeksna številka, po kateri se bodo iskale vrstice v desni tabeli. Število indeksnih stolpcev mora biti enako številu iskalnih stolpcev (glejte parameter lineColumnsLeftIT).
  • pageColumnsRightIT- vrsta: niz. Seznam stolpcev, ki bodo kopirani iz desne tabele v levo. Seznam je določen v obliki "<ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст>- ime stolpca v desni tabeli; če tak stolpec v levi tabeli ne obstaja, bo ustvarjen.<ИмяКолНазн>- če je navedeno, potem vrednost iz stolpca desne tabele z imenom<ИмяКолИст>bo kopiran v stolpec leve tabele<ИмяКолНазн>.

Opis: Izvede operacijo, podobno ukazu SQL Levo Pridružite se. Za vsako vrstico iz leve tabele (leva tabela je trenutni objekt) se dodajo vse vrstice iz desne tabele, ki se ujemajo s ključnim izrazom. Ključni izraz je določen s parametrom lineColumnsLeftIT. Vrednosti stolpcev, določenih v parametru, se prenesejo iz desne tabele v levo pageColumnsRightIT ostani nespremenjen.

RightJoin

Sintaksa: RightConnection(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Opcije:
  • lineColumnsLeftIT- vrsta: niz. Stolpci, katerih vrednosti bodo uporabljene za iskanje vrstice v desni tabeli.
  • Prav IT- vrsta: IndexedTable. Priložena tabela.
  • IndexRightIT- tip: niz, število. Ime ali indeksna številka, po kateri se bodo iskale vrstice v desni tabeli. Število indeksnih stolpcev mora biti enako številu iskalnih stolpcev (glejte parameter lineColumnsLeftIT).
  • pageColumnsRightIT- vrsta: niz. Seznam stolpcev, ki bodo kopirani iz desne tabele v levo. Seznam je določen v obliki "<ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст>- ime stolpca v desni tabeli; če tak stolpec v levi tabeli ne obstaja, bo ustvarjen.<ИмяКолНазн>- če je navedeno, potem vrednost iz stolpca desne tabele z imenom<ИмяКолИст>bo kopiran v stolpec leve tabele<ИмяКолНазн>.

Opis: Izvede operacijo, podobno ukazu SQL Desno Pridružite se. Za vsako vrstico iz leve tabele (leva tabela je trenutni objekt) se dodajo vse vrstice iz desne tabele, ki se ujemajo s ključnim izrazom. Ključni izraz je določen s parametrom lineColumnsLeftIT. Vrednosti stolpcev, določenih v parametru, se prenesejo iz desne tabele v levo pageColumnsRightIT. Če vrstice iz leve tabele ni v desni, se izbriše. Če vrstica desne tabele ni v levi, se doda in vsi stolpci razen tistih, ki so določeni v parametru pageColumnsRightIT

FullJoin

Sintaksa: FullJoin(strColumnsLeftIT, RightIT, IndexRightIT, strColumnsRightIT)

Opcije:
  • lineColumnsLeftIT- vrsta: niz. Stolpci, katerih vrednosti bodo uporabljene za iskanje vrstice v desni tabeli.
  • Prav IT- vrsta: IndexedTable. Priložena tabela.
  • IndexRightIT- tip: niz, število. Ime ali indeksna številka, po kateri se bodo iskale vrstice v desni tabeli. Število indeksnih stolpcev mora biti enako številu iskalnih stolpcev (glejte parameter lineColumnsLeftIT).
  • pageColumnsRightIT- vrsta: niz. Seznam stolpcev, ki bodo kopirani iz desne tabele v levo. Seznam je določen v obliki "<ИмяКолИст>|<ИмяКолИст:ИмяКолНазн> [,...]". <ИмяКолИст>- ime stolpca v desni tabeli; če tak stolpec v levi tabeli ne obstaja, bo ustvarjen.<ИмяКолНазн>- če je navedeno, potem vrednost iz stolpca desne tabele z imenom<ИмяКолИст>bo kopiran v stolpec leve tabele<ИмяКолНазн>.

Opis: Izvede operacijo, podobno ukazu SQL Polna pridružitev. Za vsako vrstico iz leve tabele (leva tabela je trenutni objekt) se dodajo vse vrstice iz desne tabele, ki se ujemajo s ključnim izrazom. Ključni izraz je določen s parametrom lineColumnsLeftIT. Vrednosti stolpcev, določenih v parametru, se prenesejo iz desne tabele v levo pageColumnsRightIT. Če vrstica leve tabele ni najdena v desni, potem so vrednosti stolpcev leve tabele ostani nespremenjen. Če vrstica desne tabele ni v levi, se doda in vsi stolpci razen tistih, ki so določeni v parametru pageColumnsRightIT so napolnjene s praznimi vrednostmi.

Spoji

Sintaksa: Spoji (TZ [, indeks = ""] [, stolpci = ""])

Opcije:
  • TK- tip: IndexedTable, Value Table. Tabela, iz katere bodo naloženi podatki.
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka v izvorni tabeli. Privzeto je primarni indeks. Če je ToR tipa Tabela vrednosti, se ta parameter ne upošteva.
  • Stolpci- tip: niz, število. Seznam stolpcev, ločenih z vejicami ali številko stolpca v izvorni tabeli. Določa seznam stolpcev, ki bodo sodelovali v procesu združevanja. Če ni podana nobena vrednost ali je podan prazen niz, je parameter prezrt.

Opis: doda vrstice iz izvorne tabele v trenutno tabelo. Če ima izvorna tabela stolpce, ki jih ni v trenutni, se ustvarijo. Združevanje se izvede ob upoštevanju indeksa in filtra izvorne tabele.

Presek / konjunkcija

Opcije:
  • TZ2- vrsta: IndexedTable. Tabela, s katero je sestavljeno križišče.
  • Kazalo trenutnega TK
  • IndexSecondTK
  • flAddLinesTZ2

Opis: presečišče dveh tabel po ključnih poljih. Rezultat presečišča je tabela, v kateri so vrstice trenutnega TK, ki so v TK2, in vrstice TK2, ki so v trenutnem TK (ob upoštevanju Add Lines TK2 fl.). Ujemanje nizov določata indeksa IndexCurrentTK in IndexTK2. Število stolpcev v indeksih mora biti enako.

Razlika

Opcije:
  • TZ2- vrsta: IndexedTable. Tabela, iz katere je sestavljena razlika.
  • Kazalo trenutnega TK- tip: niz, število. Ime ali indeksna številka trenutne tabele.
  • IndexSecondTK- tip: niz, število. Ime ali indeksna številka v TZ2.
  • flAddLinesTZ2- tip: Številka. Zastavica za dodajanje vrstic TZ2 v rezultat.

Opis: razlika med dvema tabelama v ključnih poljih. Rezultat je tabela, v kateri so vrstice trenutnega TK, ki niso v TK2, in vrstice TK2, ki niso v trenutnem TK (upoštevajoč Dodaj vrstice TK2 fl.). Ujemanje nizov določata indeksa IndexCurrentTK in IndexTK2. Število stolpcev v indeksih mora biti enako.

Kopirati

Sintaksa: Kopiraj ([hCopyIndices = 0], [hCopyData = 1])

Opcije:
  • hCopyIndices- tip: Številka. Če je 1, bodo kopirani tudi indeksi in filtri.
  • hCopyData- tip: Številka. Če je 1, bodo podatki kopirani; če je 0, se kopira samo struktura.

Vrne: vrsta: IndexedTable. Spremenljivka, ki je kopija predmeta.

Opis: ustvari kopijo tabele.

VFile / SaveToFile

Sintaksa: VFile(strFileName, [hFormat = 1], [Index = ""], [hColumnNames = 1])

Opcije:
  • strFileName- vrsta: niz. Ime datoteke, v katero naj bo tabela zapisana. Če datoteka že obstaja, je prepisana.
  • hFormat
  • Kazalo
  • hImena stolpcev- tip: Številka. 1 - prva vrstica datoteke bo vsebovala imena stolpcev. Smiselno je samo za datoteke csv.

Opis: zapiše tabelo v datoteko.

FromFile / LoadFromFile

Sintaksa: FromFile(strFileName, [hFormat = 1], [hColumnNames = 1])

Opcije:
  • strFileName- vrsta: niz. Ime datoteke, iz katere naj se prebere tabela.
  • hFormat- tip: Številka. Format datoteke. Lahko sprejme naslednje vrednosti: 1 - zapis vrednosti v interni obliki; 2 - snemanje vrednosti v zunanji obliki; 3 - datoteka csv z vrednostmi v notranji obliki; 4 - datoteka csv z vrednostmi v zunanji obliki.
  • hImena stolpcev- tip: Številka. 1 - prva vrstica datoteke hrani imena stolpcev. Smiselno je samo za datoteke csv. Če je parameter = 0, so imena stolpcev oblikovana kot __col__<НомерКолонки>.

Vrne: vrsta: številka. 1 - tabela je uspešno prebrana; 0 - napaka pri branju.

Opis: prebere tabelo iz datoteke.

INString / SaveToString

Sintaksa: INString([hFormat = 1], [Index = ""])

Opcije:
  • hFormat- tip: Številka. 1 - snemanje vrednosti v notranji obliki; 0 - pisanje vrednosti v zunanji obliki.
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks. Nalaganje v datoteko se izvede ob upoštevanju razvrščanja in filtriranja (če obstaja) glede na podani indeks.

Vrne: tip: niz. Predstavitev vrstic tabele.

Opis: Pretvori tabelo v predstavitev niza za serializacijo. Nastali niz se lahko pozneje uporabi v metodi FromString().

FromString / LoadFromString

Sintaksa: FromString(strRepresentation)

Opcije:
  • pagePresentation- vrsta: niz. Predstavitev vrstic tabele.

Opis: naloži tabelo iz predstavitve niza.

Izberite Line

Sintaksa: SelectRow([Row = 0], [strWindowTitle = ""], [hTimeout = 0], [Index = ""])

Opcije:
  • Linija- tip: poljubno. Spremenljivka, v katero je postavljena vrednost, je številka izbrane vrstice. Ko tukaj kličete metodo, lahko posredujete vrednost številke začetne vrstice.
  • pageTitleWindow- vrsta: niz. Naslov izbirnega okna.
  • hTimeout- tip: Številka. Čas, ko sistem čaka (v sekundah) na odziv uporabnika. Če ni določeno, je čakalna doba neskončna.
  • Kazalo

Vrne:

Opis:

Prikaži / Pokaži

Sintaksa: Prikaži ([Indeks = ""])

Opcije:
  • Kazalo- tip: niz, število. Identifikator ali indeksna številka. Privzeto je primarni indeks. V izbirnem oknu se prikažejo vrstice ob upoštevanju razvrščanja in filtra (če obstaja) po podanem indeksu.

Vrne: vrsta: številka. 1 - če je izbira opravljena (pritisnjena je tipka "OK"); 0 - če izbira ni opravljena (pritisnjen gumb "PREKLIC").

Opis: Odpre okno za interaktivno izbiro vrstice v tabeli vrednosti. Metoda je namenjena predvsem odpravljanju napak.

Vprašanje: Indeksirana tabela vrednosti


Vprašanje je, ali je mogoče narediti tabelo vrednosti v pogovornem obrazcu indeksirano in nato z njo delati kot z indeksirano tabelo?
Ali pa je bolje delati ločeno z ITZ in nato naložiti rezultate v tabelo vrednosti, ki je vidna na obrazcu?
In drugo vprašanje je, kako zagotoviti, da se pri nalaganju ITZ v tabelo vrednosti oblika stolpca ne pokvari?
Komponenta PySy 1c++ je vredna tega, če je tako.

odgovor:() po ohlajanju Natahauze medenjakov ne morete dobiti nikjer, razen seveda, če gre le za temo iz šale

Vprašanje: Delo s tabelo vrednosti


Dober dan vam, dragi programerji. Prosim za pomoč pri reševanju težave v 1C, žal mi je, ni boom-boom
Poskušal sem to narediti sam, vendar nisem bil niti dovolj pameten, da bi sestavil primer.

1. Postavite tabelo vrednosti v pogovorno okno.
2. V modulu Obrazec opišite stolpce tabele: Izdelek, Količina, Cena, Znesek.
3. V pogovorno okno postavite podrobnosti dialoga »Produkt«, »Cena«, »Količina« in gumb Dodaj vrstico, ki doda novo vrstico v tabelo vrednosti in jo napolni z vrednostmi ustreznega podrobnosti. Znesek je treba izračunati kot zmnožek cene in količine.
4. Dodajte gumb Izbriši vrstico, ki izbriše trenutno vrstico tabele vrednosti. Razmislite o situaciji prazne tabele vrednosti.
5. Dodajte gumb Strni, ki naj sešteje količino in količino za izdelke v stolpcu Cena, izračunajte povprečno ceno izdelka.
6. Dodajte gumb Razširi, ki obnovi stanje tabele vrednosti pred strnitvijo.
7. Dodajte gumb Razvrsti za razvrščanje vrstic po izdelku.

Hvala v naprej!

odgovor: platforma? Vodeni ali običajni način?
V sintaksi "Tabela vrednosti"

Vprašanje: 8.2 - Pridobite podatke iz izračunanega polja tabele vrednosti


Ne vem, kako naj to zares razložim.
Obrazec ima polje tabele. V postopku WhenReceivingData(Element, RowDesigns) v ločenem
stolpec izračunam vrednost:

Za vsako vrstico načrta iz cikla vrstic načrta

Torej grem tako skozi vrstice v tabeli vrednosti in dobim podatke iz te celice?

odgovor:

mešaš pojme. polje tabele je samo polje tabele - tukaj ni tehnične specifikacije. tako kot izračunaš isto in greš naokrog

Vprašanje: SKD: Hierarhija iz tabele vrednot


Zdravo!
Povejte mi, kako ustvariti hierarhijo iz tabele vrednosti, kot je ta

FieldString | FieldStringParent
________________________________
Glavni katalog | Glavni katalog
Vasiljev I.A. | Glavni katalog
Najem nepremičnin | Vasiljev
Razni dokumenti | Vasiljev
Ivanov | Glavni katalog
Najem nepremičnin | Ivanov
Razni dokumenti | Ivanov

Moramo nekako izvleči drevo iz tega. Zaenkrat deluje programsko, vendar mislim, da se da takšno drevo vgraditi v sistem za shranjevanje.

odgovor: No, programsko ustvarite objekt Value Tree in vanj postavite ročice lastnika (vozlišča) in podrejene elemente (vrstice).

In ti podatki so le v obliki tabele vrednosti in ne elementov hierarhičnega imenika? Če je to hierarhični imenik, potem je to enostavno kot luščenje hrušk.

In če ga potrebujete iz tabele vrednosti in ga ustvarite, kakor želite, naredite to takole:

V poizvedbi določite začasno tabelo, kamor postavite svoje tehnične specifikacije.
Nato na njej naredite izbor in vrstico pridružite njenemu nadrejenemu.

Vprašanje: Prenos tabele vrednosti v skupni modul


Dober večer
Novo v 1C. Preučujem različico 3.0 tankega odjemalca. Obstaja zunanja nadzorovana oblika. Skupnim modulom želim dodati tabelo vrednosti. Stuck, prosim za pomoč:
1C
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 & Na strežniku Postopek Izvedi zahtevo na strežniku () З = Nova zahteva; H. Besedilo = "IZBERI | Dekodiranje plačilnega naloga izdatkov z nasprotno stranko, | Odhodkovni blagajniški nalog Dešifriranje plačila. Znesek plačila|OD | Dokument. Dešifriranje izdatkovnega blagajniškega naloga kot plačila.; Tz = Z. Izvedi () . Razbremeni() ; //Izpis rezultata poizvedbe v tabelo obrazca TF(Tz); Konec postopka & na strežniškem postopku TF (Tz) Splošne funkcije. Izpolnite tabelo obrazca (ToR) Konec postopka

Splošni modul:

Napaka: (Form.Form.Form(23)): Napaka pri klicu kontekstne metode (FillFormTable)
Splošne funkcije. Izpolnite tabelo obrazca (ToR).
zaradi:
Neujemanje vrste (številka parametra "1") (Neveljavna vrsta parametra. Dovoljeni so samo primitivni tipi, reference, struktura)
Kako prenesti tehnične specifikacije v nadaljnjo obdelavo?

odgovor:

Sporočilo od Prsvet

Zakaj tip posreduje številko, pri prenosu tehničnih specifikacij pa je treba nastaviti, da se ponovna uporaba povratnih vrednosti ne uporablja?

Ker,

Sporočilo od Prsvet

ponovna uporaba vrnjenih vrednosti

Predpomnjeno na odjemalcu in tabela vrednosti ni serializirana na odjemalcu

Dodano po 32 sekundah
S tem parametrom morate delati previdno!

Dodano po 35 sekundah
Prsvet, če ne veste, kako ta parameter deluje, je bolje, da ga ne uporabljate!

Vprašanje: Tabela vrednosti s cikličnim polnjenjem stolpcev


Vse najboljše.
Naloga je prikazati tabelo prejemov/stroškov blaga za izbrano obdobje s tedensko razdelitvijo. Odločil sem se, da ga implementiram kot tabelo vrednosti (sprva sem mislil, da bi bil poročilo, vendar nisem našel, kako). Ker je število stolpcev vnaprej neznano, se tabela generira programsko:

//*** opis TK kot atribut obrazca SelectionType array = new array; arrayofSelectionType.Add(type("Tabela vrednosti")); Opis vrste izbire = nov opis vrste (matrika vrste izbire); arrayAttributes = nova matrika; matrika Attributes.Add(nov atribut obrazca("TZForm", opis SelectionType, "", "TZForm")); //*** opis tipov CN = new QualifiersNumbers(10,2); KS = novi kvalifikatorji vrstic (100); mas = nova matrika; mass.Add(type("String")); TypeString = new TypeDescription(mas, ks); masa.Počisti(); mas = nova matrika; masa.Dodaj(tip("Število")); Številka tipa = nova vrsta opisa (mas, CN); masa.Počisti(); // *** //ustvari začasno tabelo vrednosti TK = new ValueTable; TK.Columns.Add("product", TypeString, "product"); za n=1 po številu tednov cikel TK.Columns.Add("prihod" + n, Število tipa, "prihod" + n); TK.Columns.Add("strošek" + n, Številka vrste, "strošek" + n); EndCycle; za vsak stolpec iz ciklične matrike TK.Columns Attributes.Add(novi atributi obrazca(column.Name, column.ValueType, "TZForm")); EndCycle; changeDetails(arrayDetails); Tabela SelectionFields = Elements.Add("TZForm", type("FormTable")); SelectionFields table.DataPath = "TZForm"; tableSelectionFields.Display = displayTable.List; za vsak stolpec iz ToR.column cikla newElement = elements.Add(column.Name, type("FormField"), tabela SelectionFields); newElement.View = FormFieldView.InputField; newElement.DataPath = "TZForm." + Ime stolpca; newElement.Width = 10; EndCycle;

Nato se izpolni stolpec z imenom:

RequestNom = nova zahteva; zaprNom.Text = "izberite BlagoVSkladiščnihPrometih.Nomenklatura AS postavko | iz Akumulacijskega Registra.BlagoVSkladiščnih.Promet() AS BlagoVSkladiščnihPrometih"; TZNom = lockNom.Execute().Unload(); za vsako strnom iz cikla TZN strnom = strnom.nomenklatura; //dodaj ta element v začasni TK StrTZ = TK.Add(); StrTZ.product = strNom; EndCycle;

Na koncu blago iz začasne TK razložimo v TK obrazec:

ValueВFormAttributes(TZ, "TZForm");

Problem je ciklično polnjenje prihodkov in odhodkov. Če prav razumem, je vsaka vrstica teh podatkov zapolnjena z zanko, ugnezdeno znotraj zanke za polnjenje stolpca izdelka. To pomeni, da ob vsaki ponovitvi izpolnjevanja vrstice z izdelkom naredimo zahtevo za prejemke in izdatke, na katero prenesemo ime izdelka, začetni in končni datum obdobja. Rezultat poizvedbe se naloži v tabelo vrednosti, ki ima na koncu eno vrstico. To deluje, ko so prikazani podatki za celotno obdobje, to je, ko so trije stolpci: izdelek, potrdilo, strošek.

Toda v tem primeru sta za vsak teden potrebna dva stolpca. Naj se imena teh stolpcev razlikujejo po številki tedna, to je dohodek1, odhod1, dohodek2, odhod2 itd. Jasno je, da je v tem primeru organiziran cikel, v katerem se v zahtevku za prihodke in odhodke namesto konca obdobja posreduje datum, ki je bil na začetku ponovitve + teden.

Vprašanje se pojavi pri prenosu zneskov prihodkov in odhodkov iz tabele vrednosti na podlagi rezultatov poizvedbe v začasno tabelo. Kako naj opišemo, da se v vsaki iteraciji pri nalaganju podatkov iz tabele rezultatov poizvedbe v začasno TK število v imenu stolpcev prihodkov in odhodkov poveča za 1? Konec koncev je na splošno postopek razkladanja videti takole:

TZInflowConsumption = RequestInflowExpense.Execute().unload(); za vsak vhodni strošek iz TZ v vhodnem ciklusu str TZ.prejem = vrstica priliv odliv.prejem; strTZ.flow = strInflowConsumptionRev.flow; strTZ.turnover = strIncomeExp.rev.turnover; EndCycle;

odgovor:

končno prišel do kode. hvala, pomagalo je. izkazalo se je takole:

TK = Zahteva po nomenklaturi(); za n=1 po številu tednov cikla TK.columns.add("receipt" + n, typeNumber, "receipt" + n); TZ.columns.add("flow" + n, typeNumber, "flow" + n); EndCycle; za n = 1 po številu tednov cikel ColumnIn = TZ.columns.find("arrival" + n); ColumnExpense = TK.columns.find("strošek" + n); Končno obdobje = začetno obdobje + teden; TZPR = RequestTurnover(BeginPeriod, EndPeriod); MPrich = TZPR.unloadColumn(0); MExp = TZPR.unloadColumn(1); TK.loadColumn(MPrich, ColumnPrich); TZ.loadColumn(Mexp, ColumnExp); Začetno obdobje = Končno obdobje; EndCycle;

Nisem je optimiziral (npr. glede poizvedbe v zanki), ker končni izgled tabele na začetku ni bil zadovoljiv glede na preglednost, sem želel drugačno rešitev. Spomnil sem se na postavitev in preglednico, poskušam

Vprašanje: Kako ga lahko obdelam v poizvedbi, ne da bi poznal strukturo tabele vrednosti?


Zdravo. Obstaja tabela vrednosti. Natančna imena stolpcev niso znana. Potrebno je obdelati tabelo vrednosti in ji dodati en stolpec ter ga izpolniti. Polnjenje se izvede na podlagi enega stolpca, katerega ime je znano.
Najenostavnejša možnost je dodati stolpec in obdelati tabelo v zanki. Vendar to ni povsem dobro.
Ali je to mogoče storiti v zahtevku?
Hvala vam.

odgovor:

V prvem približku:

Izberite * PLACE VT_ExternalData FROM &Table AS ExternalData

Izberite ExternalData.*, Table.FIELD1 FROM VT_ExternalData AS ExternalData LEFT JOIN<Таблица>AS Tabela ON ExternalData.Field1 = Tabela.Field1

Vprašanje: Kako lahko izberem po lastniku, ko izberem vrednost celice v tabeli vrednosti na UV?


Spoštovani kolegi! Nedolgo nazaj me je življenje prisililo v srečanje z nadzorovanimi oblikami, zato jih še ne razumem dobro. Ne mislite, da je vprašanje neumno in pomagajte kakorkoli lahko :) Vprašanje je naslednje. Ustvarim lastno tabelo vrednosti in jo prikažem na obrazcu. Prvi stolpec je povezava do imenika postavk, preostali stolpci pa so povezave do imenika, za katerega je Nomenklatura lastnik. Kako naj naredim, da ko začnem izbirati vrednost v takem stolpcu, seznam vrednosti že vsebuje izbor po lastniku. Do sedaj sem to naredil preko dogodka Beginning of Selection, kjer odprem seznam z zahtevano izbiro. Toda težava je v tem, da ne razumem, kam potisniti nastalo vrednost v obdelavi izbire? In obstaja sum, da je izbiro po lastniku mogoče nastaviti prek lastnosti stolpca Parametri izbire. Kaj naj naredim? Povej!

odgovor: in tukaj ga imam

&OnClient
Postopek Izbira Obdelava (SelectedValue, SelectionSource) If SelectionSource.FormName = "Directory.ObjectPropertyValues.Form.ListForm" Then In ne vem, kaj naj napišem
, da SelectedValue postavite v celico tabele, ki jo je mogoče urejati!!!

endIf;
EndProcedure

Vprašanje: Združevanje in Collapse() v tabeli vrednosti


previdno, to je 7,7 :)
Torej zadeva: PM dokumenta naložim v tabelo vrednosti.
PM dokumenta ima obliko
Polnjenje pretoka | Stranka | dostavni naslov.

Obdelujem tabelo vrednosti:
izberite Vrstice();
medtem ko getString() = 1 Zanka tbl.NewString(); tbl.Client = Odjemalec; tbl.DeliveryAddress = Naslov za dostavo; tbl.DocNumber = Invoice.DocNumber; Končni cikel ;
Bistvo je to. V postavitvi naj se pri tiskanju v eni celici nahaja naročnik, naslov za dostavo in številke vseh računov za naročnika, lahko pa je tudi en naročnik, vendar različni naslovi za dostavo. Če se naročnik in naslov ujemata, se prikaže seznam računov na podlagi teh parametrov.

odgovor:() Za dokumente uporabite črno zahtevo. Skupine: naročnik, naslov za dostavo, prodaja (razvrščeno po številki). Uporabljate cikle ob upoštevanju skupin. V originalni tabeli prikažite vrstice v drugi skupini (Naslov za dostavo), po ciklu pa v tretji skupini (Prodaja), saj boste v drugi skupini oblikovali vrstico s številkami računov.
Številke računov = "";
Medtem ko Request.Grouping(3 ) = 1 Cikel številk računov = številke računov + ?(EmptyLine (številke računov) = 1 , "", ", ") + Request.OrderingValue((TableRow.Data,LineLength)=Kaj iščemo for Then Array of FoundLines.Add(TableRow);

Pravilna uporaba indeksov lahko pospeši poizvedbe ne le za nekajkrat, ampak za več sto, včasih celo tisočkrat.

Tovrstnega pospeška preprosto ni mogoče doseči s strojno opremo. Zato je treba tej temi posvetiti veliko pozornosti.

Če želite pospešiti poizvedbo, morate pogosto ustvariti lasten indeks, kar lahko storite na več različnih načinov.

V video vajah si bomo ogledali več načinov ustvarjanja kazala. Upoštevali bomo tudi situacijo, ko indeksa zahtevane sestave ni mogoče ustvariti s standardnimi orodji platforme in ga bo treba ustvariti v DBMS.

Nastavitev indeksov z uporabo standardnih orodij platforme

Lekcija prikazuje, kateri indeksi so dejansko ustvarjeni za objekte na ravni DBMS.
Ni vse v tej temi tako očitno, kot se morda zdi na prvi pogled. Navsezadnje za številne predmete obstajajo funkcije ustvarjanja indeksov.
V tem videu si bomo ogledali vse podrobnosti.

Indeksiranje z dodatnim naročanjem

Video prikazuje razliko med možnostjo gradnje indeksa Kazalo od Kazalo z dop naročanje.
Primer prikazuje, kakšen indeks bo platforma zgradila pri uporabi dodatnega naročanja.

Ustvarjanje indeksa za dimenzije registra

Indeksiranje prve dimenzije registrov ima več odtenkov.
Video prikazuje, kateri indeksi so ustvarjeni za registrske meritve. Upoštevana je tudi situacija indeksiranja prve dimenzije registra.

Vandalsvq 1114 08.11.14 17:00 Trenutno na temo

() CheBurator, obstaja združevanje pogojev, v različici 5+. Vendar je samo v 1C++ - http://www.1cpp.ru/forum/YaBB.pl?num=1273512019.
Obstajali so načrti za pogojno zasnovo, pa tudi združevanje, a žal. Za to obstaja samo en razlog - s 7 ne delam komercialno in zato teh orodij ne spreminjam. Niti osnovnega ni ničesar, na čemer bi lahko testirali. Prej so baze podatkov SQL prav tako temeljile na datotekah in v različnih konfiguracijah. Sedaj se zdi, da obstaja samo ena, na kateri je bil razvoj in ta je bila odprta že zelo dolgo nazaj.

Na splošno so tukaj zadnje spremembe:
5.0.1 z dne 15. 4. 2012
- Spremenjen je sistem izbire v dinamičnih razširitvah (Imenik, Dokument, Dnevnik, Register, Poslovanje, Knjiženje). Dodana možnost ustvarjanja poljubnih pogojev s hierarhijo.
- V povezavi s spremembo izbirnega sistema so bile spremenjene razširitvene objekte »Dajalec podatkov.Dnevnik«, »Dajalec podatkov.Transakcije«, »Dajalec podatkov.Dokumenti«, »Dajalec podatkov.Imenik«, »Dajalec podatkov«. .Operations”, “Data Provider.Register”.
- Popravljeno vedenje gumba »Izberi po trenutnem stolpcu«. Ko pritisnete, preostale izbire niso onemogočene. Tudi, če je izbira vklopljena, je izklopljena.
- Ko je stolpec aktiviran, se spremeni prikaz gumba »Izberi po trenutnem stolpcu«.
- Izdelava izbirnih pogojev na podlagi podrobnosti je bila optimizirana.
- Odpravljena je napaka izgube trenutne vrstice pri spreminjanju hierarhičnega pogleda razširitvenega objekta »Data Provider.Directory«.
- Uporaba parametra »Display Selection Icon« je onemogočena. Ta parameter je prepuščen za združljivost s prejšnjimi različicami.
- Objekta »Ponudnik podatkov. Opis vrst« in »Ponudnik podatkov. Vrste primerjave« sta bila odstranjena iz ponudnika podatkov. Namesto tega se uporabljata običajna objekta »Opis vrst« oziroma »Vrste primerjave«. Za več informacij si oglejte dokumentacijo za razrede "Objects_v8".
- Popravljena zrušitev 1C pri spreminjanju vrste vrednosti predmeta »Ponudnik podatkov«.

5.0.2 z dne 24. 4. 2012
- Odpravljena je napaka pri postavljanju seznamov z vrednostmi nizov za izbiro.
- Odpravljena napaka pri generiranju zahteve za razširitveni objekt »Data Provider.Register«, če ima register atribut »Hitra obdelava premika«
- Ugotovljene napake so popravljene.

5.0.3 z dne 22. 5. 2013
- Objekt »Data Provider.Direct Request« je bil posodobljen na različico 1.8.6 z dne 22. maja 2013.
- vsi razredi so zbrani skupaj v enem arhivu + primeri

5.0.4 z dne 25.10.13
- Popravljene ugotovljene napake

5.0.5 od 23.05.14
- Popravljene ugotovljene napake pri dodajanju podatkovnih stolpcev
- Dodana možnost gradnje drevesnih struktur v razpoložljivih poljih pri dodajanju podatkovnih stolpcev (pravzaprav lahko zdaj uporabite objekt »Izbor« za gradnjo izbir, kot je SKD v 8, vendar morate imeti datoteko)

mob_info