Universele Bitrix-lijsten. Universele lijsten

Probeer de volgende vragen te beantwoorden:
  • Hoeveel kost het om een ​​factuur te betalen?
  • Hoeveel van het geld van het bedrijf wordt besteed aan papierwerk?
  • Wat zijn de kosten voor het aanvragen van verlof?
  • Er wordt tijd besteed aan routine

    Deze vragen kunnen verwarrend zijn. Maar laten we erover nadenken. Naast het uitvoeren van directe taken worden werknemers gedwongen hun werktijd te besteden aan het invullen van documentatie: aanvragen, rapporten, certificaten en verschillende formulieren. Dit leidt tot een afname van de arbeidsefficiëntie, wat een negatieve invloed heeft op de activiteiten van de onderneming.

    Na analyse van de situatie komen we tot een zeer teleurstellende conclusie: een aanzienlijk deel van de werktijd wordt niet besteed aan het beoogde doel. Maar de bestede uren kunnen worden gebruikt om extra winst te genereren en nieuwe klanten aan te trekken.

  • Hoe kunt u efficiënt worden en geld besparen op uw dagelijkse werk?

    Hoe is bedrijfsautomatisering nuttig?

    Moderne programma's voor het optimaliseren van bedrijfsprocessen vestigen de aandacht van medewerkers op het uitvoeren van lopende taken en het zo snel mogelijk bereiken van een bepaald resultaat. Het systeem biedt de manager volledige informatie over de acties van elke medewerker van de onderneming en helpt de werktijd te verdelen volgens de doelen en prioriteiten van het bedrijf.


  • Hoe kan Bitrix24 hierbij helpen?

    Bitrix24 is een eenvoudig en handig systeem dat zorgt voor een helder beheer van bedrijfsprocessen in elke organisatie. De dienst wordt gebruikt als een krachtig programma voor het opbouwen van bedrijfsprocessen: betaling van facturen, boekhouding van interne en uitgaande documentatie, verwerking van aanvragen, facturen, enz. Nu kosten deze operaties geen extra tijd. Met behulp van de instellingen kunt u de werking van het systeem aanpassen aan de interne routine en bedrijfsmodus.


  • Flexibele configuratie van alle bedrijfsprocessen

    In Bitrix24 kunt u met zowel standaardbewerkingen werken als uw eigen bewerkingen aanpassen. Met drag-and-drop-technologie kunt u beschrijvingen bewerken, op het werk lanceren en verantwoordelijke medewerkers toewijzen.

    Alle controle wordt uitgevoerd via het bijbehorende tabblad. Hierin vindt u gedetailleerde informatie over de voortgang van taken en een overzicht van alle voltooide werkzaamheden. Als de status van een taak is gewijzigd, wordt de bijbehorende informatie weergegeven in de “Live Feed” van de gebruiker en de notificatieservice.


  • Eenvoudige automatisering en controle

    Nog nooit was bedrijfsautomatisering zo toegankelijk.

    Bitrix24 beperkt het aantal werknemers dat deelneemt aan de geplande actie niet. De gebruiker heeft toegang tot een ingebouwde goedkeuringsreeks met de mogelijkheid om aanvullende voorwaarden toe te voegen: verplichte velden of documenten. Werken met het programma voor het bouwen van bedrijfsprocessen is nog handiger geworden!


  • Bedrijfsprocessen zullen nooit meer saai zijn!

    Met Bitrix24 bereikt het beheer van bedrijfsprocessen een fundamenteel nieuw niveau. Iedereen kan de instellingen begrijpen; u hoeft hiervoor geen diepgaande kennis op het gebied van informatietechnologie te hebben.

    Alle geplande acties worden beschikbaar voor medewerkers in de “Live Feed” en “lanceren” wordt met een paar klikken uitgevoerd. U hoeft zich geen zorgen meer te maken over de goedkeuring van documenten: alles is al ingesteld en klaar voor gebruik.

    Is er sprake van een controversiële situatie? In de opmerkingen onder elke melding kunnen jij en je collega's alle nuances bespreken en de juiste oplossing voor het probleem ontwikkelen. Dit heeft een positief effect op de interactie tussen verschillende afdelingen en vertraagt ​​​​het werk van het bedrijf niet.


  • Procesautomatisering levert niet alleen een kostenreductie op, maar ook een direct voordeel!

    Door de implementatie van Bitrix24 kunt u niet alleen werktijd besparen, maar ook het aantal verkopen verhogen via het programma voor bedrijfsprocessen. Het CRM-systeem biedt de mogelijkheid om een ​​algoritme te configureren voor het verdelen van leads onder medewerkers van de betreffende afdeling.
  • De module "Universele Lijsten" is behoorlijk krachtig en functioneel. Het kan met succes worden gebruikt om sitegebruikers de mogelijkheid te bieden hun informatie-elementen in het openbare gedeelte toe te voegen en te bewerken. Het principe om ermee te werken is echter heel anders dan wat we gewend zijn als we bijvoorbeeld werken met de component “Informatieblokelementen toevoegen”. Allereerst gaat het hier om het instellen van toegangsrechten. In dit artikel zal ik u vertellen hoe u een module kunt configureren om een ​​taak uit te voeren die vergelijkbaar is met de taak die eerder is opgelost met behulp van de component "Informatieblokelementen toevoegen", d.w.z. zodat de gebruiker informatieblokelementen kan toevoegen en elementen kan bewerken, maar alleen de elementen die door hem zijn toegevoegd, met de mogelijkheid van moderatie door de site-editor.

    1. Maak een informatiebloktype

    Omdat De complexe component "Universele lijsten" (bitrix:lists) werkt niet met individuele informatieblokken, daarom creëren we het informatiebloktype "Bedrijven".

    2. Configureer het type informatieblok om met universele lijsten te werken

    Om dit te doen, gaat u naar de instellingen van de module "Universele Lijsten" (Instellingen > Productinstellingen > Module-instellingen > Universele Lijsten) en geeft u op het tabblad "Toegangsrechten" de groep "Beheerders" toestemming om lijsten te beheren in onze aangemaakte "Bedrijven". "informatiebloktype.

    Deze stap is nodig omdat... Zonder dit zal ons infobloktype bij het plaatsen van een component niet verschijnen in de vervolgkeuzelijst in de componentparameters.

    3. Plaats het onderdeel

    We maken een sectie op de site en plaatsen daarin de component “Universele Lijsten”.

    Selecteer in de componentparameters ons informatiebloktype en schakel CNC-ondersteuning in (in de niet-CNC-modus kon ik het onderdeel persoonlijk niet aan de praat krijgen).

    Een informatieblok (lijst) toevoegen

    Na het plaatsen van het onderdeel zien we op de pagina een paneel met één knop “Toevoegen”. Met zijn hulp kunnen we een informatieblok toevoegen.

    Klik op de knop "Toevoegen". Het formulier voor het toevoegen van een informatieblok wordt geopend.

    Stel op het tabblad "Toegang" het recht "Toevoegen" in voor de groep "Geregistreerde gebruikers" en het recht "Bewerken" voor de gebruikerscategorie "Auteur". Met dit laatste kan de gebruiker zijn elementen bewerken. Als u het recht “Bewerken” instelt voor de groep “Geregistreerde gebruikers”, kan de gebruiker alle elementen van het informatieblok bewerken, en niet alleen die van hemzelf. In plaats van de groep "Geregistreerde gebruikers" kunt u ook de categorie "Alle geautoriseerde gebruikers" gebruiken.

    Let op: een informatieblok kan ook worden toegevoegd via het administratieve gedeelte van Bitrix als u uitgebreide toegangsrechten inschakelt.

    Na het voltooien van deze stappen zien gebruikers van de groep "Geregistreerde gebruikers" het volgende op de hoofdpagina van de sectie:

    Wanneer u het informatieblok (lijst) “Bedrijf” selecteert, heeft de gebruiker toegang tot een lijst met de elementen ervan.

    Wanneer u op de knop "Bedrijf toevoegen" klikt, wordt een bewerkingsformulier geopend:

    Velden toevoegen

    De interface voor het toevoegen van velden is hetzelfde voor de velden zelf en de eigenschappen van het infoblok. In dit geval kunt u voor elk veld een eigen naam instellen, zoals in het onderdeel “Informatieblokelementen toevoegen”.



    Meldingen en goedkeuring verzenden

    Het verzenden van meldingen naar de sitebeheerder en het goedkeuren van documenten bij het werken met universele lijsten gebeurt meestal via bedrijfsprocessen. Omdat Het gebruik van standaard bedrijfsprocessen lijkt in dit geval niet handig, u zult uw eigen bedrijfsproces moeten creëren. U kunt ook de module “Document Flow” gebruiken in plaats van bedrijfsprocessen, maar u zult het informatieblok moeten configureren om te werken met de documentstroom via het administratieve deel van Bitrix, omdat Deze functie is niet beschikbaar in de component "Universele Lijsten").

    Om bedrijfsprocessen met een lijst (infoblock) te gebruiken, moet het selectievakje "Ondersteuning van bedrijfsprocessen inschakelen" in de lijstinstellingen zijn aangevinkt. Vervolgens verschijnt de knop “Bedrijfsprocessen” in de lijstwerkbalk voor de beheerder.

    Nadat we op de knop hebben geklikt, zien we een lijst met bedrijfsprocessjablonen.

    Klik op de knop 'Een opeenvolgend bedrijfsproces maken'. De bewerkingspagina voor bedrijfsprocessjablonen wordt geopend.

    Dit is een licht aangepast standaardbedrijfsproces 'Goedkeuring bij eerste stemming'. Omdat Het was niet mogelijk om het standaard publicatiemechanisme te gebruiken - bij het depubliceren worden de elementen niet weergegeven in de lijst (zelfs niet als beheerder), in plaats van de blokken "Publiceren"/"Depubliceren van een document" gebruikte ik "Een document wijzigen" blokken met eenvoudige activering/deactivering. Ook gebruikte ik in plaats van e-mailberichten sociale media-berichten.

    Vink in de sjabloonparameters het selectievakje 'Automatisch uitvoeren bij toevoegen' aan.

    Als u het selectievakje "Automatisch uitvoeren bij wijziging" aanvinkt, wordt het proces door de gebruiker gestart wanneer het element verandert. Of u kunt hiervoor een apart bedrijfsproces maken, dat volgens een ander scenario zal functioneren, door bijvoorbeeld het element niet te deactiveren, maar eenvoudigweg een melding naar de site-editors te sturen.

    Let op: houd er rekening mee dat als een gebruikersgroep niet ten minste “Lees”-toegang heeft tot de lijst (infoblok), deze groep niet zal verschijnen in het selectiedialoogvenster voor gebruikersgroepen in de bedrijfsprocesontwerper, en u niet in staat zult zijn om bijvoorbeeld het verzenden van een melding aan deze groep te programmeren.

    Een componentsjabloon bewerken

    Het bewerken van de componentsjabloon zal in ons geval vooral neerkomen op vereenvoudiging en het uitschakelen van onnodige functionaliteit.

    Als u bijvoorbeeld de standaardweergave van de lijst wilt wijzigen (standaard worden alle veldkolommen weergegeven en het kleurenschema blauw is), voegt u de volgende code toe aan de template van de list.list-component in het bestand result_modifier.php:

    $aOptions = CUserOptions::GetOption("main.interface.grid" , $arResult[ "GRID_ID" ], array()); $aOptions ) ( $aOptions = array (
    "weergaven" =>
    array (
    "standaard" =>
    array (
    "naam" => "<Представление по умолчанию>" ,
    "kolommen" => "NAAM,BIZPROC" ,
    "sort_by" => "NAAM" ,
    "sort_order" => "oplopend" ,
    "page_size" => "20" ,
    "saved_filter" => "" ,
    ),
    ),
    "filters" =>
    array (
    ),
    "current_view" => "standaard" ,
    "filter_rows" => "list_section_id" ,
    "thema" => "grijs" ,
    ); CUserOptions::SetOption("main.interface.grid" , $arResult[ "GRID_ID" ], $aOptions );

    Deze code zal de uitvoer alleen instellen op de kolommen “Titel”, “Bedrijfsprocessen”, grijs kleurenschema, enz. Als de gebruiker al kolommen of iets anders heeft geselecteerd, wordt zijn selectie niet gewijzigd.

    Verwijder in hetzelfde result_modifier.php-bestand de link naar het bedrijfsproces in de lijst, waarbij alleen de naam overblijft. We veranderen de naam van de kolom “Bedrijfsprocessen” in “Status”. Deze kolom geeft dus de status van het bedrijfsproces weer. We kunnen bijvoorbeeld de statussen “Onder moderatie”, “Gepubliceerd”, “Afgewezen” instellen in het bedrijfsproces zelf.

    Om de mogelijkheid om een ​​bedrijfsproces te starten vanuit het contextmenu te verwijderen, voegt u de code in hetzelfde bestand in:

    foreach($arResult [ "ELEMENTS_ROWS" ] as $i => $arRow ) ( $arActions = Array(); $arRow [ "actions" ] as $a => $arAction )
    if(! $arAction [ "MENU" ]) $arActions = $arAction ; $arResult [ "ELEMENTS_ROWS" ][ $i ][ "acties" ] = $arActions ;

    Nu bewerken we de componentsjabloon list.element.edit - we verwijderen de tabbladen “Bedrijfsprocessen” en “Secties” volledig. Voor de eerste, zoek gewoon de CModule::IncludeModule("bizproc") constructie in het template.php bestand en voeg " && false" ernaast in; voor de tweede, zoek en becommentarieer de regel:
    array("id" => "tab_se" , "name" => $arResult [ "IBLOCK" ][ "SECTION_NAME" ], "icon" => "" , "fields" => $arTabSection ),

    Kortom

    Over het algemeen is het gebruik van de module "Universele Lijsten" om deze eenvoudige taak op te lossen niet gerechtvaardigd of zelfs maar handig (we moesten te veel acties uitvoeren, inclusief het bewerken van de componentsjabloon). De component "Informatieblokelementen toevoegen" is hiervoor veel beter geschikt, zo niet voor één ding: deze component wordt niet langer ondersteund door 1C-Bitrix en de eenvoudigste dingen moeten bijna helemaal opnieuw worden aangepast. Daarom kan de beschreven werkwijze in veel gevallen voordelen hebben.

    Ik zou graag een functionaliteit willen presenteren die voor veel ontwikkelaars erg belangrijk is en die een brede toepassing zal vinden (en nu al vindt) in 1C-Bitrix-producten - zowel in Site Management als in de Corporate Portal. Het is vooral belangrijk als we rekening houden met de huidige trend van de huidige tijd - dat een website nu niet alleen een website is als presentatie van een bedrijf, maar steeds meer als bedrijfsapplicatie, als functionaliteit voor het organiseren van interactie met partners en klanten. We zullen het hebben over universele lijsten met behulp van Grid-technologie. We zullen het een beetje hebben over de rasters zelf – alleen op het niveau van ‘wat is het’. Laten we Universele Lijsten eens nader bekijken - hoe precies de "keuken" van Grids in deze module wordt gebruikt, waarom het het werk van een webontwikkelaar bij het maken van allerlei soorten lijsten op sites enorm vereenvoudigt, en de gebruiker in staat stelt ermee te werken gemakkelijk en gemakkelijk.

    Iets over rasters

    De technische ondersteuning van 1C-Bitrix ontvangt voortdurend vragen over het onderwerp: “Wat dacht je ervan om de inhoud van het beheerderspaneel “de straat op te gaan” voor mensen?” Hoe kun je bepaalde functionaliteit in het “publieke” presenteren, bijvoorbeeld universele netwerken? En deze niet alleen presenteren, maar u ook de mogelijkheid geven om daar gegevens in te voeren?

    Bij het ontwikkelen van een nieuw product - "Corporate Portal", werden de ontwikkelaars van 1C-Bitrix geconfronteerd met het feit dat alle openbare interfaces onsamenhangend bleken te zijn. En alleen omdat er geen tool was om een ​​uniforme interface te creëren. De oplossing was visuele Grids - een set kernelcomponenten om een ​​uniforme interface te creëren. Wat voor soort Grids zijn dit, wat moet je erover weten? Dit is in de eerste plaats een ontwikkelaarstool! Dit is geen aangepaste component, dus het heeft geen zin om deze via de componentenboom aan de projectpagina toe te voegen. Dit is een API waarmee de ontwikkelaar zijn gegevens kan presenteren.


    Multifunctioneel onderdeel voor het weergeven van lijsten

    Mogelijk hebt u de misvatting over Grids dat ze alleen InfoBlocks kunnen weergeven. Dit is absoluut niet waar: rasters kunnen met abstracte gegevens werken en alles weergeven wat eraan wordt 'gegleden'. Rasters zijn bovendien voorzien van standaardfunctionaliteit voor het werken met lijsten en formulieren. Dat wil zeggen: wat een gemeenschappelijk punt is, wordt door rasters eenvoudiger en eenvoudiger gemaakt. En een van de onderscheidende kenmerken van rasters is dat ze vrij brede aanpassingsmogelijkheden bieden voor de gebruiker - 'voor zichzelf'. Dit betekent dat elke gebruiker zijn eigen rasterinstellingen kan maken, wat alleen voor hem handig is.


    Aangepaste weergaven instellen

    Hoe ziet het algemene schema voor het gebruik van rasters eruit? Omdat Grids op een openbare sectie draaien, zult u hoogstwaarschijnlijk een component voor de openbare sectie maken die gegevens, sorteringen, filters, enzovoort presenteert. Om deze gegevens te presenteren, roept u de Grid-component, de formuliercomponent in uw componentsjabloon, op en geeft u eenvoudigweg de gegevens ervan door voor weergave. En indien nodig kunt u kant-en-klare componenten gebruiken, laten we zeggen dat een van de eenvoudigste de "werkbalk" is, die uw werkbalk met knoppen weergeeft.

    Universele lijsten

    Rastercomponenten zijn geïmplementeerd in 1C-Bitrix-producten, met name de documentbibliotheek in 1C-Bitrix: Corporate Portal gebruikt rastercomponenten en de module Bedrijfsprocessen zonder documenten gebruikt rasters. Hierdoor kunt u een uniforme interface gebruiken met dezelfde gebruikersinstellingen en functionaliteit. Eén van deze modules, waarvoor feitelijk de Grid “keuken” is gestart, is de module Universele Lijsten. Wat voor module is dit?


    Lijst - Regering van de Russische Federatie

    Er ontstaan ​​vaak taken om gegevens in een openbaar gedeelte te onderhouden, en tot nu toe waren daar geen interfaces voor, behalve natuurlijk de administratieve. De gemaakte module is een add-on voor Infoblocks, georganiseerd als een openbare complexe component en stelt de gebruiker in staat zijn gegevens in de vorm van een lijst in te voeren. De component werkt met het opgegeven type InfoBlock (de distributie toont "Lijsten"), dit is standaard ingesteld in de componentinstellingen. Dit betekent dat alle InfoBlocks die in dit onderdeel zijn gemaakt, aan dit type worden toegevoegd.


    Componentinstellingen - Infobloktype

    Ook kunt u aangeven welke gebruikersgroepen het recht hebben om met onze universele lijsten te werken. Laten we zeggen dat u in de instellingen voor de beheerder kunt opgeven dat hij secties en lijstelementen kan wijzigen en toevoegen. Maar u kunt dit recht ook aan andere groepen gebruikers toekennen, bijvoorbeeld medewerkers van het bedrijf.


    Lijsten, ook wel Infoblokken genoemd

    Wat zien we op de site? In wezen een lijst met infoblokken. Dat wil zeggen, door een nieuwe lijst toe te voegen, bijvoorbeeld “Partners”, voegen we een nieuw Infoblok toe. In dit lijstinformatieblok kunnen we handtekeningen en inscripties configureren voor elementen en secties van de lijst. Als we het bijvoorbeeld over een lijst met partners hebben, kan de naam van “Item toevoegen” worden gewijzigd in “Partner toevoegen”. De eigenaar van de lijst kan onmiddellijk de toegang tot zijn lijst bepalen: voor de ene groep - lezen, voor de andere - veranderende elementen. Zo kunt u met de gemaakte lijsten onmiddellijk de volgorde van het collectieve werk bepalen en instellen.

    Om met lijsten te gaan werken, moet u een pagina maken, een Infoblock-type maken, de component “Universele Lijsten” op de pagina plaatsen, het infobloktype “Lijsten” daarin selecteren en aan de slag gaan.

    De ontwikkelingsplannen voor lijsten in 1C-Bitrix-producten voorzien in het volgende:

    Verlaag de controle over lijsten naar werkgroepniveau, zodat je binnen de groep met je eigen lijsten kunt werken;

    Zodat u zelfstandig uw eigen persoonlijke lijst in uw profiel kunt aanmaken. Om lijsten op zijn pagina te kunnen ‘aanmaken’, moet de gebruiker voorlopig contact opnemen met de beheerder om de component op zijn pagina te plaatsen en te configureren, waarna hij met de lijsten aan de slag kan.


    Lijstvelden instellen

    Wat kunt u aanpassen in de lijst? We hebben het al gehad over handtekeningen en rechten. En het meest interessante is dat je de velden in de lijsten kunt aanpassen! Bovendien moet er vooral op worden gelet dat dit op precies dezelfde manier gebeurt als u deed in het administratieve gedeelte in de Infoblokken. In dit geval kunt u zowel standaardvelden toevoegen, zoals “Naam”, “Activiteitsdatum”, als Infoblok-eigenschappen, zoals Nummer, Datum, Bestand, Link naar Infoblok-elementen. U kunt ook standaardwaarden instellen en Infoblock-secties gebruiken.


    Basis lokale instellingen

    Laten we eens kijken hoe de lijst is geconfigureerd. Laten we een veld toevoegen. Laat dit de datum van het laatste contact zijn. We voegen een veld toe, we zeggen dat het Datum\Tijd is, we voeren niet de standaardwaarde in - er verschijnt een veld, bijvoorbeeld "Datum van oproep". Nu bewerken we de lijstparameters en dienovereenkomstig hebben we een nieuw veld van het type "Datum". Zoals u kunt zien, kunnen we op deze manier onze lijst flexibel aanpassen door de velden toe te voegen die we nodig hebben, en bijvoorbeeld een register bijhouden van enkele documenten op de site.

    Zoals we al hebben gezegd, gebruikt de Lijsten-module standaard Grid-mogelijkheden, dat wil zeggen dat het het sorteren van elementen, het filteren van elementen, een formulier voor het bewerken van elementen en het bewerken/verwijderen van groepen ondersteunt.

    Lijsten + Bedrijfsprocessen

    Een ander zeer interessant kenmerk van Universele Lijsten is ondersteuning voor ingebouwde bedrijfsprocessen. Waarschijnlijk heb je dit nog niet in je openbare gedeelte staan. Om Bedrijfsprocessen in uw lijsten op te nemen, moet u naar het administratieve gedeelte in dit Infoblok gaan en daar Bedrijfsprocessen inschakelen.


    Bedrijfsprocessen in lijsten worden ingeschakeld in het beheerderspaneel - in de eigenschappen van het informatieblok

    Met behulp van bedrijfsprocessen kunt u behoorlijk serieuze dingen op lijsten organiseren. In het register van inkomende documenten kunt u bijvoorbeeld met de eigenschap Counter automatisch alle documenten nummeren en kunt u een bedrijfsproces openen dat het definitieve document naar de uitvoerder stuurt, die op de een of andere manier op dit document zal reageren. Zo kunt u met lijsten goed gecoördineerd teamwerk organiseren.


    Lijsten ondersteunen bedrijfsprocessen

    Voorbeelden van het gebruik van lijsten

    De module Universele Lijsten is opgenomen in alle edities van "1C-Bitrix: Corporate Portal" (www .1c -bitrix .ru /products /intranet /) - het is duidelijk dat het daar nodig is om lijsten van een soort interne volgorde bij te houden Dit kunnen bijvoorbeeld lijsten zijn met contacten met klanten. In “1C-Bitrix: Site Management” (www.1c-bitrix.ru/products/cms/) is de module aanwezig in 3 senior edities, te beginnen met Business. De verwachting is dat de lijsten bijvoorbeeld zullen worden gebruikt om privésecties voor zakenpartners te creëren. In dit geval kunnen partners hun vertrouwelijke lijsten daar bijhouden. Dat wil zeggen dat wij voor sommige sitebezoekers een extra service kunnen organiseren.


    Lijsten op de website van een overheidsorganisatie

    U kunt een specifieker voorbeeld geven: organiseer de ontvangst van webformulieren op de site. In wezen worden webformulieren een invoerformulier voor een informatieblokelement. In het administratieve gedeelte beheer je verschillende Infoblocks en natuurlijk wil je niet verschillende groepen gebruikers toelaten in het admin-paneel - daar werken alleen je content-editors. Het is echter noodzakelijk om bijvoorbeeld de partners van het bedrijf de mogelijkheid te geven gegevens uit deze infoblokken te verwerken - ze te doorzoeken, nieuwe records toe te voegen. Bovendien moet dit bovendien snel gebeuren in het “publiek” – zonder, herhalen we, naar de administratieve afdeling te gaan. Dit is waar het kant-en-klare mechanisme van Universele Lijsten te hulp komt, waardoor een bestaand InfoBlock met een grote hoeveelheid verzamelde gegevens precies in het “publiek” kan worden gepresenteerd en de mogelijkheid wordt geboden om er doorheen te zoeken en informatie te filteren - in het algemeen , werk met deze gegevens.

    Laten we u er nogmaals aan herinneren dat Grids een technologie zijn waarmee u met al uw gegevens en met elke bron kunt werken. Je haalt bijvoorbeeld gegevens uit een MySQL-project en organiseert het werk op Grids - het invoeren en verwerken van deze gegevens. Maar Lijsten zijn al een praktische oplossing “Grids + Infoblocks”. Hoe zijn ze verbonden? Een lijst en een Infoblock zijn in wezen hetzelfde: dezelfde gegevens, alleen toegankelijk voor een organisatie rechtstreeks vanuit het “publiek”.

    Met behulp van Universele Lijsten kunt u dus snel lijsten maken met veelgestelde vragen over uw webproject. We benadrukken nogmaals - rechtstreeks van het “publiek” - zonder in het administratieve panel te gaan! Met de visuele universele lijsteditor kunt u snel opslagplaatsen voor elk type informatie maken en configureren. En door visuele componenten te gebruiken die slepen en neerzetten ondersteunen, kunt u dit eenvoudig doen. Bovendien kunt u gegevens niet alleen in de opslag invoeren, maar ook bewerken.

    Natalya Sergeeva voor Softomania

    Melechova Svetlana

    25.08.2014


    Een andere interessante taak kwam voor mij uit de nasalnik. Het is noodzakelijk om een ​​tool te schrijven waarmee je universele lijsten voor sociale groepen kunt kopiëren (zonder inhoud, alleen een diagram). Evenals bedrijfsprocessen die bij deze lijst horen.
    Wie is hier? 0_0
    Het lukte niet om me voor te doen als een stukje behang, dus moest ik het doen. En schrijf een artikel, anders vergeet ik alles.

    Vandaag ter discussie:

      1. het kopiëren van universele lijsten voor sociale groepen
      2. bedrijfsprocessen van deze lijsten kopiëren
    De besproken tool vindt u aan het einde van het artikel. Het is waar dat je zelf moet begrijpen dat ik niet verantwoordelijk ben voor wat je met zijn hulp hebt gemaakt =)

    Verder:
    • BP - bedrijfsproces
    • CS - universele lijst (in het artikel worden CS voor sociale groepen bedoeld)
    • IS - informatieblok
    • KP - bedrijfsportaal
    • SG - sociale groep
    Wat is VS?
    Ten eerste kostte het me wat tijd om te begrijpen wat ze precies van mij wilden. Over het algemeen is CP nog steeds zo'n jungle voor mij =)
    Om het denkwerk te laten zien, zal ik alles beschrijven zoals het was.

    Eerst vragen we de beheerder om een ​​testadres en plaatsen daar een checklist met de inhoud.
    Dan proberen we erachter te komen wat de VS zijn. Nadat ik in het beheerderspaneel had rondgekeken, realiseerde ik me dat dit een stom informatieblok is en dat je ermee kunt werken als een informatieblok van een bepaald type. Het kopiëren van de voeding hebben we voorlopig achterwege gelaten, er is voorrang gegeven aan de lijsten.
    Op de testpagina krijgen we een lijst met alle informatiebeveiliging, we begrijpen dat het type informatiebeveiliging voor sociale groepen is lijsten_socnet. Tegelijkertijd merken we de aanwezigheid van een veld SOCNET_GROUP_ID, waarvan de waarde gelijk is aan de SG ID; logisch, toch?

    Ik probeer een informatieblok te maken voor een bepaalde SG met behulp van een standaardfunctie die we gewend zijn CIBlock::Toevoegen(). Ik ontvang de gemaakte CS, die ter bewerking in het SG-publiek wordt getoond. En het handmatig aanmaken van eigenschappen komt later, rechtstreeks in de tool.

    Geïnspireerd door succes begin ik het instrument zelf te creëren. Ik weet niet meer hoe ik op een menselijke manier met formulieren moet werken, dus alles gebeurt in Ajax.

    Stappen van de planningstool

    De eerste stap is het verkrijgen van de lijst met SG's. Hieruit selecteert de gebruiker de groep waaruit het besturingssysteem moet worden gekopieerd. Dit wordt gedaan door de functie CSocNetGroup::GetList() module sociaal netwerk.

    De tweede stap is het verkrijgen van het besturingssysteem voor de groep die in de eerste stap is gespecificeerd. Dit gebeurt met behulp van een standaard infoblock-functie met een geconfigureerd filter.
    CIBlock::GetList(false, array("IBLOCK_TYPE_ID" => "lists_socnet", "SOCNET_GROUP_ID" => $chosen_id));

    In de derde stap tonen we opnieuw de lijst met SG's, alleen met de mogelijkheid van meervoudige selectie. De gebruiker markeert de groepen waar de in de tweede stap gespecificeerde CS moet worden gekloond.

    De verdere strategie is vrij logisch:

      1. we krijgen een lijst met velden en eigenschappen van het besturingssysteem
      2. Maak voor elke SG gespecificeerd in de derde stap een informatieblok-US
      3. voor elk aangemaakt besturingssysteem creëren we dezelfde eigenschappen als die van de originele lijst met behulp van de klasse CIBlockProperty, wat gebruikelijk is voor infoblokken, voor het werken met eigenschappen
      4. bij elke stap loggen we acties zodat we later de volgorde van acties mooi kunnen laten zien =)
    CLijst
    We implementeren het, lanceren het, kijken naar het beheerderspaneel - alles is prachtig gemaakt en wrijven vrolijk onze pootjes tegen elkaar. Nu gaan we het publieke domein in en begrijpen dat de eigenschappen voor het besturingssysteem daar niet worden weergegeven.

    Ik begin met archeologische opgravingen. Gelegen klasse C Lijst met een stel kinderen. Ik zweer met verfijnde vloeken en kijk hoe het werk met de lijsten vordert.
    Maar in principe gebeurt hetzelfde als bij het werken met informatieblokken, alleen met een eigen add-on, die zijn trucs in de database registreert. Ik zal niet bespreken waarom dit nu is gedaan, hoewel het erg interessant is. Naar aanleiding van mijn klachten hierover zei mijn collega Maxim: “blijkbaar is dit gedaan om problemen op te lossen die voor ons niet voor de hand liggend zijn”. Waarop ik het antwoord kreeg dat deze zin in Bitrix op vrijwel elke oplossing kan worden toegepast =)

    In totaal verander ik na de procedure de code van punt drie van de strategie: om eigenschappen te creëren die ik gebruik CList::AddField().
    Om de waarden van een woning van het aanbiedingstype te krijgen, gebruik ik trouwens het gebruikelijke CIBlockProperty::GetPropertyEnum(). Omdat ik niet de taak had om iets anders te verwerken dan strings en lijsten, verwerk ik niet specifiek andere typen (zoals een bestand of een afbeelding; een voorbeeld van verwerking is te vinden in de code van de kinderen van de klas CLijst, ik zag het daar ergens).

    Deze keer verschijnen de eigendommen in het publieke domein en gaan we verder met het oplossen van het probleem van het kopiëren van borderliners die aan het controlesysteem zijn gekoppeld.

    Bedrijfsprocessen kopiëren
    Allereerst brengt googlen mij bij het onderwerp Bedrijfsprocessen volledig en individuele elementen kopiëren. Ik hou niet van het onderwerp exporteren, het is lastig, en zelfs voor honderden besturingssystemen is het triest om handmatig te exporteren, maar programmatisch zal het een paar dagen duren om erachter te komen =) Een hint over waar je eerlijk heen kunt gaan manier: ja CBPWorkflowTemplateLoader::GetList(), maar ik wilde er echt niet achter komen.

    Daarom gaan we de "gevaarlijke" weg van het onderwerp af - rechtstreeks in de database prikken. Ja, je kunt me neerschieten, maar ik had weinig tijd om de taak te voltooien, dus ging ik rechtdoor. En de taak is niet de meest standaard.

    Maak handmatig een voeding aan en kijk wat er in de tabel is veranderd b_bp_workflow_template: er is een lijn toegevoegd waar het veld ENTITEIT geïnstalleerd CIBlockDocument en het veld DOCUMENT_TYPE heeft de waarde iblock_#ID#, waar #ID KAART#- Amerikaans ID waar de zakenpartner is aangemaakt.

    Laten we terugkeren naar de kopieertool. Voeg in de derde stap een selectievakje toe “Kopieer ook BP van de lijst”.

    Punten toevoegen aan de strategie

      1. Ontdek welke voedingen zijn gekoppeld aan het besturingssysteem
      2. kopieer de rij in de tabel en wijs deze opnieuw toe TYPE DOCUMENT voor een nieuw gecreëerde VS
    Als gevolg hiervan kregen we een Frankenstein-tool. Het werkt =)

    De module “Universele Lijsten” vereenvoudigt de presentatie van alle gestructureerde informatie op de website in de vorm van lijsten. Maak lijsten op uw website, zoals veelgestelde vragen, rechtstreeks vanuit het “publiek” - zonder naar het administratieve paneel te gaan! Met de visuele universele lijsteditor kunt u snel opslag voor elk type informatie ontwerpen en configureren.

    https://site/moduli-cms-1s-bitriks/universal_lists/"

    Module "Universele lijsten"
    Rasters + Informatieblokken
    Een lijstinterface maken
    Lijsten opstellen
    Lijsten + Bedrijfsprocessen
    Voorbeelden van het gebruik van lijsten

    Module "Universele lijsten"

    Het belangrijkste kenmerk van de module is dat u hiermee direct allerlei soorten lijsten kunt maken uit het publieke deel plaats. Zonder naar het “admin panel” te gaan, maakt u uw eigen mappen, lijsten, registers, enz. aan en vult u deze met gegevens. Om dit te doen, moet u een interface maken en configureren

    Modulemogelijkheden:

    • constructie van willekeurige objectopslagplaatsen;
    • alle functionaliteit is beschikbaar via de sitepagina's;
    • alles werkt op basis van de module Informatieblokken en alle mogelijkheden ervan zijn beschikbaar: filters en sortering, kaarten en lijsten met aanpasbare kolommen en velden, groepsbewerking, toegangsrechten, enz.;
    • Elke objectopslaghiërarchie is mogelijk;
    • als toepassingsmogelijkheden: FAQ's, naslagwerken en kennisbanken, lijsten van aannemers, gestructureerde archieven, bibliotheken, bestandsopslag en meer.

    Rasters + Informatieblokken

    De module is een add-on voor Infoblocks, georganiseerd als een openbaar complexcomponent en maakt gebruik van standaardmogelijkheden Gridov. Hierdoor kunt u een uniforme interface creëren - met dezelfde gebruikersinstellingen en functionaliteit. Met zo'n universele interface kunt u veel problemen oplossen die verband houden met het bijhouden van gegevens in een openbaar gedeelte.

    De module werkt met het opgegeven type informatieblokken, en standaard wordt dit type in de componentinstellingen aangeroepen "Lijst". Dit betekent dat alle InfoBlocks die u in deze component maakt, zullen worden toegevoegd aan dit type dat u opgeeft. Ook in de componentparameters worden, naast het type informatieblokken waarin de lijsten worden opgeslagen, de adressen van alle pagina's van de universele lijsteninterface gespecificeerd.

    Een lijstinterface maken

    Om met lijsten te gaan werken, moet u creëren Type informatieblok, waarmee de component "Universele Lijsten" zal werken (bijvoorbeeld "Lijsten"), maak een pagina op de site; plaats deze complexe component op de pagina, selecteer daarin het gemaakte type informatieblok ("Lijsten") en begin met het vullen ervan.

    In de module-instellingen voor het aangemaakte type Infoblocks is het noodzakelijk om groepen gebruikers te specificeren die in staat zullen zijn om te werken en onze universele lijsten te beheren. Stel dat u voor de beheerder kunt instellen dat hij secties en lijstitems kan wijzigen en toevoegen. En op dezelfde manier kunt u een van deze rechten toekennen aan andere gebruikersgroepen, bijvoorbeeld bedrijfsmedewerkers.

    Na deze eenvoudige stappen krijgt u een volwaardige interface voor het werken met lijsten, en al het verdere werk ermee gebeurt volledig in het openbare gedeelte.

    Lijsten opstellen

    U maakt en bewerkt lijsten, de secties, elementen en eigenschappen ervan in het openbare gedeelte van de site. Op de pagina waar de complexe component “Universele Lijsten” zich bevindt en is geconfigureerd, kunt u onmiddellijk nieuwe lijsten toevoegen en meteen beginnen met het invullen ervan. In wezen maak je dezelfde informatieblokken aan, alleen nu niet in het “beheerderspaneel”, maar rechtstreeks op de site, en je ziet ze meteen op de pagina. Wanneer u bijvoorbeeld een nieuwe “Partners”-lijst toevoegt in het openbare gedeelte, voegt u een nieuw Infoblok toe met dezelfde naam.

    In dit lijstinformatieblok kunt u configureren handtekeningen, labels voor elementen en secties van de lijst. Als we het bijvoorbeeld over een lijst met partners hebben, moet “Element toevoegen” worden hernoemd naar “Partner toevoegen”. Als eigenaar van de lijst kunt u dit direct bepalen toegang aan je lijst: sommige groepen - lezen, sommige - veranderende elementen. Zo wordt de volgorde van het collectieve werk met de gemaakte lijsten onmiddellijk bepaald en geconfigureerd.

    Naast handtekeningen en rechten in lijsten kunt u dat ook doen velden aanpassen. Dit doe je op dezelfde manier als voorheen in het administratieve gedeelte – in Infoblocks. Tegelijkertijd kunt u niet alleen standaardvelden toevoegen - zoals "Naam", "Activiteitsdatum", maar ook Infoblock-eigenschappen - zoals "Nummer", "Datum", "Bestand", "Binden aan Infoblock elementen”. Ook worden standaardwaarden ingesteld en worden Infoblock-secties gebruikt.

    Op deze manier kunt u uw lijst zeer flexibel aanpassen en alleen die velden toevoegen die u nodig heeft. En u zult deze lijst onmiddellijk op de website gaan bijhouden, bijvoorbeeld een register van enkele documenten. De module “Universele Lijsten” maakt gebruik van standaard Grid-mogelijkheden - dit betekent dat het het sorteren en filteren van elementen ondersteunt, een formulier voor het bewerken van elementen en het wijzigen/verwijderen van groepen.

    Lijsten + Bedrijfsprocessen

    De module Universele lijsten ondersteunt ingebouwde Business processen. Om deze mogelijkheid – om bedrijfsprocessen te starten – in uw lijsten te laten verschijnen, moet u deze inschakelen. Deze verbinding wordt gemaakt in het administratieve gedeelte - in de eigenschappen van het Infoblok waarmee uw lijsten werken.

    Met behulp van bedrijfsprocessen kunt u met behulp van lijsten serieus en goed gecoördineerd teamwerk aan een specifiek project organiseren. Gebruik bijvoorbeeld de eigenschap Teller in het register van inkomende documenten, waarmee u alle documenten automatisch kunt nummeren. En het zal mogelijk zijn om een ​​bedrijfsproces te openen dat bijvoorbeeld het definitieve document naar een artiest stuurt, die op de een of andere manier op dit document zal reageren.

    Voorbeelden van het gebruik van lijsten

    De module “Universele Lijsten” is opgenomen in 2 senior edities van “1C-Bitrix: Site Management” - “Business” en “Web Cluster”. Natuurlijk kunt u hun functionaliteit gebruiken om lijsten met een bepaalde interne volgorde bij te houden. Misschien zijn dit lijsten met contacten met klanten. Uw lijsten worden bijvoorbeeld gebruikt om privésecties voor zakenpartners aan te maken. In dit geval kunnen partners hun eigen activiteiten uitvoeren vertrouwelijke lijsten. Dat wil zeggen dat u aanvullende services kunt organiseren voor verschillende groepen gebruikers van uw site.

    Stel dat u behoefte heeft aan organisatie webformulieren accepteren op de website van zakelijke partners. Tegelijkertijd wil je natuurlijk geen toegang geven tot het administratieve gedeelte aan ongeautoriseerde gebruikers. Met het kant-en-klare mechanisme van “Universele Lijsten” kunt u een bestaand informatieblok met een grote hoeveelheid verzamelde gegevens in het “publiek” presenteren en partners de mogelijkheid geven er doorheen te zoeken en informatie te filteren. Dat wil zeggen dat partners alleen met lijstgegevens zullen werken en daar vermeldingen aan zullen toevoegen.

    De module Universele Lijsten is een praktische oplossing "Rasters + Infoblokken". Met deze oplossing kunt u uw website zo configureren dat deze met een grote verscheidenheid aan lijsten werkt: met alle gegevens en met elke bron. Met de Grid-technologie die in de module wordt gebruikt, kunt u dit met succes doen: maak veelgestelde vragen, naslagwerken en kennisbanken, lijsten met aannemers, gestructureerde archieven, bibliotheken, bestandsopslagplaatsen en meer.