Suite

Création d'un complément pour cliquer sur une fonction ArcFM

Création d'un complément pour cliquer sur une fonction ArcFM


Je voudrais créer un complément pour appuyer sur ArcFM enregistrer toutes les cinq minutes. Y a-t-il un moyen de faire ça?


C'est possible mais vous devez activer les dossiers dans les paramètres avancés dans les paramètres de la bibliothèque.

Accédez à la bibliothèque en question > Paramètres de la bibliothèque > Paramètres avancés > Définir la commande « Rendre disponible un « nouveau dossier » ? » à Oui, puis cliquez sur OK.

Vous devriez maintenant pouvoir créer des dossiers dans la bibliothèque de pages du site.

L'idée derrière un site de publication est que vous créez des sous-sites pour des sections ou des zones de votre site. Par exemple À propos de nous, Produits, Services, Actualités. Étant donné que chaque sous-site aura sa propre bibliothèque de pages, vous obtiendrez alors une organisation de page naturelle de cette façon.

Vous pouvez créer des dossiers comme vous l'avez mentionné, mais cela peut affecter la navigation de votre site selon que vous utilisez la navigation gérée ou la navigation structurelle. Ce dernier ne peut pas lire les pages dans les sous-dossiers et remplir la navigation en conséquence.

Juste un avertissement au cas où cela affecterait votre site.

Vous feriez probablement mieux d'utiliser une colonne de métadonnées et d'organiser les pages de cette façon (de préférence une colonne de site de propriété gérée pour faciliter la recherche sur la route). Les utilisateurs peuvent sélectionner la catégorie appropriée à partir des détails de la page lors de la création de la page. Une habitude difficile mais bonne à appliquer.


Création d'une nouvelle annotation

La fenêtre Créer des entités et la barre d'outils Editeur fournissent les outils dont vous avez besoin pour créer de nouvelles entités d'annotation. La fenêtre Créer des entités vous permet de choisir la méthode de construction de votre nouvelle annotation : horizontale, courbe, ligne de repère, etc. Une fois que vous avez choisi l'outil à utiliser, la fenêtre Construction d'annotation s'affiche. Vous pouvez ainsi saisir le texte de la nouvelle annotation, contrôler la manière dont le texte est placé et remplacer les propriétés d'annotation par défaut telles que définies par le modèle d'entité. Le texte est affiché dans la fenêtre Annotation Construction avec le même formatage et le même dimensionnement que la nouvelle entité aura lorsqu'elle sera placée sur la carte (l'échelle de référence n'est pas utilisée dans la fenêtre).

L'outil de construction par défaut est l'une des propriétés d'un modèle d'entité. Lorsque vous choisissez un modèle dans la fenêtre Créer des entités, l'outil de construction par défaut est activé. Par exemple, si vous créez une annotation qui identifie les noms de routes ou de rivières, vous souhaiterez peut-être que l'outil de construction par défaut soit l'outil Suivre l'annotation d'entité, qui est utilisé pour créer une annotation qui suit le long des formes de polygones ou de lignes. Pour définir les propriétés d'un modèle d'entité, double-cliquez dessus dans la fenêtre Créer des entités.

Lorsque vous créez une annotation, vous pouvez modifier les propriétés du symbole de l'annotation. Si vous constatez que vous apportez de nombreuses modifications à la symbologie, vous devez envisager d'utiliser ou de créer un nouveau symbole plutôt que de modifier le symbole en profondeur.


Google a une documentation officielle sur le schéma d'URI de l'application Chrome iOS sur son site Web de développeur.

Remplacez simplement http par googlechrome et https par googlechromes . Ça signifie:

  • http://www.google.com/ devient googlechrome://www.google.com/
  • https://apple.stackexchange.com/ devient googlechromes://apple.stackexchange.com/

Auparavant, il prenait en charge une x-callback-url de googlechrome-x-callback:// . Cela a permis à l'application appelante d'indiquer son nom et son schéma d'URI à Chrome, ce qui afficherait un bouton de retour dans la barre d'adresse qui fermerait l'onglet et invoquerait l'URI spécifié. Cette fonctionnalité a été supprimée il y a quelques années lorsque iOS 9 a ajouté le bouton « Retour à … » dans la barre d'état (mais le schéma d'URI fonctionne toujours).


Ce n'est pas possible par OOTB. Mais il existe de nombreuses façons d'y parvenir. En plus du lien partagé par @ganesh dans le commentaire ci-dessus, vous pouvez essayer ces deux méthodes mentionnées ci-dessous :

Utilisation du champ Date et heure et de la colonne calculée

Créez une colonne Date et heure et une colonne Calculée avec la formule :

Utilisez l'interface utilisateur de piquetage de temps sur votre page qui peut permettre à l'utilisateur d'entrer l'heure. Dans votre code derrière (code js), lors de la saisie de données dans SharePoint, vous pouvez ajouter l'heure à une date, puis ajouter ces données à la colonne Date. L'heure ajoutée par l'utilisateur sera affichée dans la colonne Calculée.

Utilisation des champs numériques et de la colonne calculée

Créez 2 champs numériques (1 pour les heures et l'autre pour les minutes) et spécifiez les valeurs min et max en fonction du champ (0-24 pour les heures et 0-60 pour les minutes). Créez un champ calculé avec la formule :


5 réponses 5

Il existe un moyen plus simple de modifier le dossier de destination par défaut. Allez simplement dans « paramètres avancés » dans la bibliothèque. Là, vous pouvez dire si vous voulez que cette bibliothèque soit la bibliothèque par défaut pour le site activa. Cochez « oui » et « non » dans les paramètres avancés de toutes les autres bibliothèques du site. Terminé!

D'accord. Je l'ai compris et je suis choqué par le travail que j'ai dû faire pour changer la bibliothèque de téléchargement par défaut.

J'ai dû remplacer le bouton "télécharger" sur le ruban par le mien, créer une nouvelle fenêtre de dialogue de téléchargement, puis traiter le nom de fichier renvoyé afin que je puisse insérer un lien vers le fichier dans le message de discussion.

J'ai l'impression qu'il doit y avoir un moyen plus simple et je me cognerai la tête contre le mur si je trouve finalement un réglage dans SP pour accomplir cela.

Quoi qu'il en soit, voici le script que j'ai dû insérer sur la page.

Si vous accédez à votre bibliothèque de documents, paramètres avancés et définissez « Cette bibliothèque de documents devrait-elle être la bibliothèque de ressources de site par défaut pour ce site » sur Oui, la bibliothèque sera placée en haut de la liste.

Un gars nommé Aaren liu a répondu à cette question. Cette étape a été résolue pour moi aussi.

Accédez à la bibliothèque affichée par défaut pour Contrôle total > Paramètres de la bibliothèque > Paramètres avancés > désactivez « Cette bibliothèque de documents devrait-elle être une bibliothèque de ressources de site ». Assurez-vous également qu'aucune autre bibliothèque n'active cette option.

Cet article s'est concentré de très près sur le formulaire de téléchargement lui-même. Ce formulaire peut être atteint par l'utilisateur dans plusieurs contextes en fonction du formulaire qu'un utilisateur télécharge dans/depuis, c'est pourquoi j'ai attaqué ce problème sous un angle différent.

Dans le contexte suivant, j'ai résolu le paramétrage de la bibliothèque de documents de téléchargement cible avec un peu de script jQuery que j'ai démontré ci-dessous.

Cela fonctionne pour le scénario où un utilisateur a focalisé un champ de texte enrichi dans une fenêtre de dialogue "Ajouter un nouvel élément", ce qui fait apparaître le ruban "Insérer". Après que les utilisateurs cliquent sur le bouton de téléchargement, jQuery extrait l'élément sélectionné de la hiérarchie des iframes et définit la bibliothèque par défaut en fonction de la valeur souhaitée. Après le téléchargement, le lien vers le fichier nouvellement téléchargé est placé dans le champ de texte enrichi. (SharePoint 2013)

Je n'ai pas testé cette méthode dans d'autres scénarios. Je suis un peu novice dans la création de javascript côté client jQuery, donc cela peut probablement être écrit sans imbrication, mais cela fonctionne!


Formats de données pour la rémunération incitative

Styles de données et formats de données

Les formats de données vous aident à définir des formats d'adresse et de nom au sein de votre organisation et à les affecter à des zones géographiques spécifiques. L'application utilise ces formats pour capturer et valider les informations sur le nom et l'adresse de la partie.

Vous devez configurer les données géographiques, en plus des formats d'adresse, pour utiliser des validations géographiques pour les adresses.

Styles de données

Vous pouvez définir de nouveaux styles pour le nom et l'adresse afin de catégoriser les formats de style de nom et d'adresse. Un style de données, tel que l'adresse postale ou le nom concaténé, catégorise les formats de style de nom et d'adresse. L'application utilise des styles de données pour identifier une manière ou une situation particulière pour laquelle une entité est formatée. Par exemple, vous pouvez configurer l'application pour afficher uniquement certains styles de nom et d'adresse dans l'interface utilisateur.

Formats de données

Vous utilisez des formats de données pour garantir la qualité des données d'adresse et de nom de partie. Les formats d'adresse sont utilisés pour présenter les éléments d'adresse dans le formatage spécifique au pays et pour aider les utilisateurs lors de la saisie de l'adresse. Cela spécifie également la portée de la validation d'adresse. Les formats d'adresses sont liés aux données géographiques pour la vérification des adresses, au niveau de l'importation des données. Par exemple, lors de la création ou de la modification d'une adresse pour une partie, la sélection d'un pays affiche le format d'adresse pour ce pays.

L'utilisation de formats de nom garantit que les composants de nom sont stockés de manière décomposée. Vous pouvez utiliser les formats de nom pour construire des représentations de nom à partir de composants dans une variété de styles différents. Vous pouvez également stocker des noms phonétiques requis pour certaines zones géographiques.

Les formats de données simplifient le stockage de l'adresse et du nom de la partie en les stockant en tant que composants. Vous pouvez utiliser des formats pour valider les adresses et les données de nom, après avoir configuré le format d'adresse et de nom pour une zone géographique.

Types de formats de données

Les formats de données déterminent la manière dont les noms et les adresses sont affichés dans l'application.

Il existe deux types de formats de données.

Format d'adresse : les formats d'adresse spécifient la disposition d'une adresse, tels que les composants de l'adresse et leur position dans la disposition. Par exemple, un format d'adresse pour une adresse postale aux États-Unis peut inclure l'adresse, la ville, l'état et le code postal dans cet ordre.

Format de nom : les formats de nom spécifient la manière dont un nom est affiché dans l'application, en fonction de l'utilisation, de la langue et du pays. Un format de nom comprend des éléments de nom, leur position et leur mise en forme. Vous pouvez créer un format de style de nom pour un nom d'organisation ou un nom de personne.

Les formats de nom et d'adresse varient en fonction de l'utilisation, du pays et de la langue. Vous pouvez créer des formats de nom et des formats d'adresse, les modifier et les affecter à des paramètres régionaux spécifiques. Cela vous permet de créer des formats de données pour différents pays, langues et usages.

De plus, vous pouvez créer des variantes des formats, chaque variante ayant sa propre mise en page. Par exemple, un format d'adresse peut avoir des variantes telles que l'adresse générale, l'adresse rurale et l'adresse militaire.

Créer un format de style d'adresse

Cet exemple montre comment créer un pour un style d'adresse spécifié.

Pour créer un format de style d'adresse :

Spécifiez le format de style d'adresse et le style d'adresse

Créer la mise en page de variation de format

Dans cet exemple, nous allons créer un style d'adresse pour formater les adresses postales canadiennes.

Créez le nom du format de style d'adresse et spécifiez le style d'adresse

Pour créer un format de style d'adresse et spécifier le style d'adresse :

Dans la zone de travail Configuration et maintenance, accédez aux éléments suivants :

Offre : Gestion des données client

Domaine fonctionnel : Fondation de la communauté commerciale

Tâche : Gérer les formats d'adresse

Sur la page Gérer les formats d'adresse, cliquez sur Créer dans le menu Actions.

Sur la page Créer un format de style d'adresse, remplissez les champs de la section Présentation, comme indiqué dans le tableau suivant.

Format d'adresse postale canadienne

Créer la disposition de variation de format

Pour créer une disposition de variation de format :

Dans la section Format de la page Créer un format de style d'adresse, cliquez sur l'onglet Mise en page.


6 réponses 6

J'ai obtenu la première méthode de cette page fonctionnant sur mon STM32F072.

La façon dont j'ai fait fonctionner printf (et toutes les autres fonctions stdio orientées console) consistait à créer des implémentations personnalisées des fonctions d'E/S de bas niveau telles que _read() et _write() .

La bibliothèque GCC C fait des appels aux fonctions suivantes pour effectuer des E/S de bas niveau :

Ces fonctions sont implémentées dans la bibliothèque GCC C en tant que routines de stub avec une liaison "faible". Si une déclaration de l'une des fonctions ci-dessus apparaît dans votre propre code, votre routine de substitution écrasera la déclaration dans la bibliothèque et sera utilisée à la place de la routine par défaut (non fonctionnelle).

J'ai utilisé STM32CubeMX pour configurer USART1 ( huart1 ) en tant que port série. Comme je ne voulais que printf() , je n'avais besoin que de remplir la fonction _write(), ce que j'ai fait comme suit. Ceci est classiquement contenu dans syscalls.c .

La réponse de @AdamHaun est tout ce dont vous avez besoin, avec sprintf(), il est facile de créer une chaîne puis de l'envoyer. Mais si vous voulez vraiment votre propre fonction printf(), alors Fonctions d'arguments variables (va_list) est la voie.

Avec va_list, une fonction d'impression personnalisée ressemble à ce qui suit :

Notez que bien que cette solution vous offre une fonction pratique à utiliser, elle est plus lente que l'envoi de données brutes ou même l'utilisation de sprintf() . Avec des débits de données élevés, je pense que ce ne sera pas suffisant.

Une autre option, et probablement une meilleure option, consiste à utiliser ST-Link, le débogueur SWD avec l'utilitaire ST-Link. Et utilise Imprimer via la visionneuse SWO, voici le manuel de ST-Link Utility, la partie pertinente commence à la page 31.

Le Printf via SWO Viewer affiche les données printf envoyées depuis la cible via SWO. Il permet d'afficher quelques informations utiles sur le firmware en cours d'exécution.

_EXFUN est une macro, contenant probablement des directives intéressantes qui indiquent au compilateur qu'il doit vérifier que la chaîne de formatage est compatible avec printf et s'assurer que les arguments de printf correspondent à la chaîne de formatage.

Pour apprendre à utiliser printf, je suggère la page de manuel et un peu plus de recherche sur Google. Écrivez quelques programmes C simples qui utilisent printf et exécutez-les sur votre ordinateur avant d'essayer de l'utiliser sur le micro.

La question intéressante sera "où va le texte imprimé ?". Sur un système de type Unix, il passe en "sortie standard", mais un microcontrôleur n'a rien de tel. Les bibliothèques de débogage CMSIS peuvent envoyer du texte printf au port de débogage de semi-hébergement arm, c'est-à-dire dans votre session gdb ou openocd, mais je n'ai aucune idée de ce que SystemWorkbench32 fera.

Si vous ne travaillez pas dans un débogueur, il peut être plus judicieux d'utiliser sprintf pour formater les chaînes que vous souhaitez imprimer, puis d'envoyer ces chaînes sur un port série ou sur n'importe quel écran que vous pourriez avoir connecté.

Attention : printf et son code associé sont très volumineux. Cela n'a probablement pas beaucoup d'importance sur un 32F407, mais c'est un vrai problème sur les appareils avec peu de flash.


PTV Vissim - Foire aux questions (FAQ)

Pour tout problème concernant les plantages ou l'installation de PTV Vissim, utilisez l'outil Diagnostics pour créer un Support Package. Il s'agit d'un fichier Zip contenant tous les fichiers pertinents pour analyser le problème, mais suffisamment petit pour être envoyé via le formulaire d'assistance, le portail d'assistance ou par e-mail.

Remarque : s'applique à PTV Vissim 11.00-07 et versions ultérieures. Si vous utilisez une version antérieure, veuillez vous référer à la FAQ suivante :
https://www.ptvgroup.com/en/solutions/products/ptv-vissim/knowledge-base/faq/visfaq/show/VIS29098/

1) Ouvrez le répertoire EXE de votre installation PTV Vissim.
2) Cliquez avec le bouton droit sur Diagnostics.exe et sélectionnez « Exécuter en tant qu'administrateur ».
La fenêtre Diagnostic s'ouvre. L'onglet Actions est affiché par défaut.

3) Uniquement dans le cas où le logiciel plante au démarrage ou plus tard, sinon passez à l'étape 4 :
3a) Cliquez sur « Démarrer Vissim en mode diagnostic (utiliser Process Monitor) ».
Une boîte de dialogue de sélection de fichier s'ouvre. Process Monitor est disponible ici :
https://docs.microsoft.com/en-us/sysinternals/downloads/procmon
3b) Cliquez sur « Ouvrir ».
3c) Si vous rencontrez une erreur spécifique, reproduisez l'erreur.
3d) Fermez PTV Vissim.

4) Dans la fenêtre Diagnostics, cliquez sur l'onglet Support Package.
5) Assurez-vous que tous les rapports de diagnostic sont sélectionnés.
6) Appuyez sur le bouton « Créer un package d'assistance ».


J'utilise AutoHotKey pour exécuter cette fonction.

AutoHotKey est une application et un langage de script Windows.

Le code que j'utilise est ci-dessous, il serait facilement modifiable pour insérer l'heure et changer les barres obliques en tirets si c'est ce que vous préférez.

Google Sheets prend en charge les raccourcis clavier suivants :

Ctrl + Shift + : est la frappe pour insérer l'heure.

Ctrl + est la frappe pour insérer la date.

Ctrl + Alt + Shift + : est la frappe pour insérer la date et l'heure.

J'ai créé un petit script qui convertit le littéral de chaîne "_now" en datetime actuelle -

Je trouve assez pratique de taper _now et de le convertir en valeur datetime actuelle.

Vous pouvez mettre dans un bookmarklet avec cet emplacement :

puis modifiez la cellule et cliquez sur le signet.

La formule pour actuel date-heure est =maintenant() . Cela peut être utilisé pour créer un statique horodatage comme suit :

  1. Entrez =NOW() dans une cellule
  2. Copiez cette valeur avec Ctrl C
  3. Coller dans la même cellule avec Ctrl Shift V (ou équivalents pour "coller du texte uniquement" sur d'autres plates-formes)
  1. Dans une cellule voisine ou dans un volet figé, saisissez =aujourd'hui() dans une cellule pour obtenir la date actuelle.
  2. Copiez la cellule, puis utilisez (Coller spécial → Coller les valeurs uniquement) dans le menu Edition, pour obtenir une date et une heure statiques, au moment où vous avez collé la valeur dans la cellule que vous vouliez horodater.

Google Sheets ne le prend pas en charge, mais vous pouvez essayer une autre solution de contournement sans applications externes :

  1. Insérer un commentaire ( Ctrl + M )
  2. Copiez l'horodatage à partir de là ( Ctrl + C ou Ctrl + X )
  3. Supprimer le commentaire (Clic droit > Supprimer)
  4. Collez l'horodatage ( Ctrl + V )

(Si vous êtes sur un MacOS, utilisez Cmd au lieu de Ctrl pour Copier/Couper/Coller , mais Ctrl + M pour insérer le commentaire, car Cmd + M minimise la fenêtre.)

Vous pouvez vous référer à ce tutoriel, il contient également une vidéo. Dans le code du script, modifiez

Par défaut, il ne vous donne que la date, modifiez le code ci-dessous pour obtenir l'heure.

Est-ce ce que vous recherchez ? Je l'ai essayé et cela fonctionne parfaitement.

J'ai également créé un script pour cela, et je voulais un format qui n'est pas disponible dans les horodatages par défaut (comme dans =TODAY() ou =NOW() ).

Il récupère également le fuseau horaire en fonction de la session en cours (qui est défini dans les préférences de la feuille).

Pour clarifier : j'ai fait le formatage de la date manuellement car le formatage de date personnalisé dans Google Sheets est une pile de déchets enflammés (pas moyen de définir un format personnalisé par défaut, aucun moyen de changer l'ordre des éléments date/heure sans tout supprimer d'abord et en ajoutant chaque partie à la fois).


Voir la vidéo: Использование ArcFM для редактирования