Jump to content

Leaderboard


Popular Content

Showing content with the highest reputation since 08/26/09 in Posts

  1. 6 points
    Jérémie Gimenez

    Confrérie

    Chères consœurs, chers confrères, Un petit mot rapide pour vous informer que je prépare le lancement de mes premières vidéos sur LinkedIn. L'objectif est de faire ma promotion, certes, mais aussi, et même surtout, de promouvoir Filemaker en lui-même. Pour être plus exact : mon ambition est d'amener de nouveaux clients dans l'univers Filemaker, d'élargir un peu le socle d'entreprises clientes… Ainsi, les vidéos se présentent globalement sous l'angle "voyez ce qu'on peut faire de génial avec Filemaker"… Premier exemple à venir (en cours de montage) : analyser soi-même les résultats des élections, sans laisser journalistes et commentateurs nous imposer leurs calculs à eux. La plupart des sujets seront inspirés de situations courantes, souvent hors du développement à proprement parler, le but étant de promouvoir l'idée qu'on peut se faire plaisir et décortiquer de nombreuses situations pour en tirer de bons petits applicatifs, grâce à Filemaker (la plateforme qui nous tient tant à cœur) ! 😉 J'espère que cela aura des retombées… Et si ces retombées dépassent mon seul carnet de commandes, j'en serai même très heureux ! Après tout, si le gâteau Filemaker s'agrandit, on en sera tous bénéficiaires ! Si l'initiative vous semble positive, surtout n'hésitez pas à "liker", commenter, retransmettre, etc., mes vidéos. C'est de cette façon que les vidéos prennent de la visibilité sur les réseaux Internet. Je serai très attentifs à vos commentaires, s'il y en a. Très bonne soirée à toutes et tous ! Jérémie
  2. 5 points
    Bonjour, Merci pour votre réponse. Je suis le délégué aux données personnelles de la SOFCOT (Société Française de Chirurgie Orthopédique et Traumatologique), et moi-même chirurgien. En fait, on parle de deux problèmes différents : - la connection directe de FileMaker à des modalités techniques (laser, robots opératoires, imagerie, etc.), pour lesquelles FileMaker ne veut pas prendre de risques, si les données envoyées par FileMaker sur ces machines peuvent en modifier le fonctionnement, et, par la même, influer directement sur le patient. - ce qui n'est pas du tout le cas de la gestion des données médicales. "L'influence" de FileMaker sur un patient ne peut alors se faire que via une personne humaine, qui est alors "responsable" de ce qu'elle fait. Pour ce qui est de l'hébergement des données de santé, j'ai pu, depuis mon intervention sur ce forum, discuter avec une juriste de la CNIL. L'hébergement des données de santé est régit par le code de santé publique (art L-1111-8 et suivants) et précise: "I.-Toute personne qui héberge des données de santé à caractère personnel recueillies à l'occasion d'activités de prévention, de diagnostic, de soins ou de suivi social et médico-social, pour le compte de personnes physiques ou morales à l'origine de la production ou du recueil de ces données ou pour le compte du patient lui-même, réalise cet hébergement dans les conditions prévues au présent article. " Or, les fichiers de recherche médicales ne répondent pas à cette définition. Ils sont donc des exceptions, même si la loi ne le précise pas explicitement, tout comme l'est un fichier géré par un médecin sur sa propre machine (pas d'hébergement par un tiers). Donc : - un médecin peut parfaitement gérer son cabinet, sur sa propre machine, avec FileMaker (ce qui est fait depuis longtemps...). Ce n'est que s'il veut héberger son fichier dans un data-center que le data center doit être agréé hébergeur de données de santé. - un hébergeur FileMaker peut parfaitement héberger des données de recherche médicale, sans être agréé hébergeur de données de santé. Mais il faut impérativement : - que le fichier soit déclaré en tant que recherche clinique (passage par l'INDS, Institut National des Données de Santé ou le SNDS, pour extraction des données des fichiers nationaux) pour les études sur dossier, ou passage par un CPP (comité de protection des personnes) et déclaration à l'ANSM pour avoir un un numéro européen de recherche clinique, sous les règles de la loi Jardé, pour les études concernant la personne humaine. - et que la gestion de ces données réponde à toutes les règles du RGPD, évidemment. Cela devrait ouvrir quelques marchés aux hébergeurs FileMaker, car c'est bien plus facile de développer sous FileMaker, que de passer par les offres d'hébergeurs agréés, avec des outils php/mySQL certes performants, mais beaucoup moins souples que File Maker, dans les offres proposées.
  3. 4 points
    fabriceN

    v15 ?

    Rien à voir, c'est une image prosélyte du pastafarisme. dans sa région, pour un plat de pâtes servi à l'huile, on prononce serv'oy
  4. 3 points
    C'est que le record du plus grand nombre de slides ? Parce que là, j'en suis à 108 !
  5. 3 points
    autre solution (que j’utilise quand quelqu’un me demande une fonction en français, notamment sur ce forum) : chercher la fonction en anglais dans l’aide en ligne, puis remplacer /en/ par /fr/ dans l’url.
  6. 3 points
    Olivier Devriese

    La 16 !

    Hello, Elle est top cette version, indéniablement ! Je la montre dans diverses villes en France en ce moment et je dois dire que je suis moi-même bluffé par les nouveautés que la plateforme apporte. Il n'a jamais été aussi facile de produire quelque chose de bien, très bien même, sur desktop, mobile et web… J'ai encore discuté ce matin avec qqun qui vient du monde Java et qui est plus que surpris d'avoir pu faire en quelques heures une base avec des fonctionnalités qu'on mettrait des centaines de lignes de code à faire dans un autre langage. Oui, FileMaker est un outil sérieux et de "rapid development", qu'on se le dise !
  7. 3 points
    Rodolf

    La Mauvaise Réputation

    + 1 (je te le rajoute, comme tu ne peux qu'en enlever 1, je suis sur que la recette restera marquée ) Moi aussi j'en veux, si tu ne risques pas d'être arrêté pour trafic illégal d'huile d'olive... C'est quand ton prochain passage ? Tu es trop modeste, il est évident que ce quelqu'un est plusieurs. Sérieusement, quoiqu'on pense ou dise des notations, je ne crois pas que ce soit absolument gratuit et neutre d'atteindre un tel score en si peu de temps, à l'image sans doute de ta façon d'intervenir, au moins au début, sur le forum. Quand à déterrer des posts anciens, sincèrement je ne sais pas contrairement à toi où et quand j'ai pris des volées de -1, mais ce n'est peut-être pas neutre non plus. Et j'en parle d'autant plus à l'aise que j'ai tout mon quota de -1.
  8. 3 points
    LPN

    La Mauvaise Réputation

    Sète à toi de trouver
  9. 2 points
    La technique la plus simple et efficace est : 1. Isoler les enregistrements à dupliquer 2. Exporter ces enregistrements dans un fichier temporaire 3. Importer ce fichier temporaire 4. Effectuer les remplacement voulu (le jeu d'enregistrements actifs étant celui qui correspond aux enregistrements importés) Cordialement, Tanguy
  10. 2 points
    Je pourrais m'habituer à me faire payer en vin... Un très grand merci à @Napoleon pour la générosité !
  11. 2 points
    Bonjour, j'ajouterais cependant une petite nuance au "non" de Fabrice pour le point 1... : depuis la version 16, il est possible d'évaluer de façon dynamique à l'ouverture du fichier des références externes à d'autres fichiers. Dans le cadre de la séparation données / interface, cela permettrait par exemple de définir un chemin vers un fichier data dynamiquement calculé en fonction de l'utilisateur qui se connecte. Et donc je rends la pareille via ce lien ici ?
  12. 2 points
    Hello, As you can see, you can't enter a value in a calculated field… The only way possible to achieve your goal is to use fields (numbers) formatted as auto entered by calculation. Each of those two fields ( SellingPrice & GrossMargin) are mutually listening each other through the "changed" value (boolean true/false) of his own global variable. Here is how it works… BooleanGlobalVariablesAsFieldListeners.fmp12 .… A tremendous technique initially provided in the 2006's by Sir @fabriceN (on profite de l'anniversaire des 92 ans de la Reine pour (enfin) l'anoblir ) BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12 BooleanGlobalVariablesAsFieldListeners.fmp12
  13. 2 points
    lem alpha

    Plugins de dialogue

    Salut Noël, je vais peut-être faire une suggestion idiote, mais pourquoi ne te fais-tu pas un modèle "fenêtre carte" (ou "modale" si la version ne le permet pas), avec une série de globales dédiées, et un script que tu appellerais avec une série de paramètres, et qui imiterait la fonction du plugin ? Plus de dépendance à un plugin, totalement natif, contrôle complet de l'apparence, formatage du texte, listes de valeurs, cases à cocher, et tout artifice visuel que tu peux imaginer... Pas plus long et compliqué à mon sens que d'apprendre à le faire avec Scriptmaster... (je ne nie pas pour autant le côté "enrichissant" d'apprendre à le faire comme ça... )
  14. 2 points
    J'ai fais un démo il y a quelques années où je créais des snapshot link côté serveur, puis les ouvrait côté client. La gestion des fenêtres et certains d'autres aspects sont un peu chiant, mais ce n'était pas mal pour améliorer la performance de requêtes sur des tables avec des millions d'enregistrements, surtout à distance. Si je ne me trompe pas, j'avais également inclus des options de tri du résultat.
  15. 2 points
    Rodolf

    ListeValeurs(ListeNomrubriques)

    Le secret du tour c'est que evaluation donne le contenu de la rubrique ou variable concernée, là où la fonction utilisée se contenterait d'en prendre le nom. dans Substituer ( Texte ; ChaîneRecherche ; ChaîneRemplacement ), le premier critère est du texte et non pas une rubrique, il faut donc interpréter $eval pour en extraire le texte (le contenu).
  16. 2 points
    Ugo

    v15 ?

    J'ai jamais vraiment adopté "Ancres & Bouées", un bon graphe spaghetti, ça a l'avantage d'éloigner les prédateurs tout en impressionnant un max
  17. 2 points
    Vous allez rire, des fois la vitesse de réaction fulgurante de mon esprit me laisse pantois... Je viens [enfin !] de réaliser pourquoi le logo de la conf 2013 me disait vraiment quelque chose, depuis le moment où il a été publié sur le site dédié... C'est en fait le paillasson de mes voisins de palier... La preuve en image :
  18. 2 points
    pfff, je galère depuis des semaines (pas full time quand même ) sur un problème similaire, sans rien à voir avec FileMaker. Que du php/mysql. Parfois, le web, c'est ch...
  19. 2 points
    Je ne puis que constater que: ton allergie urticante aux produits mono-plateforme s'est calmée à l'utilisation du framework `AddressBook' (Chassez le naturel, il revient au galop!) tu as installé `Rosetta' sur ta machine. (AddressBookExporter -> Mach-O executable ppc) PS: Merci à "spad66" pour le lien!
  20. 2 points
    temp007

    Multivaluee

    Bonjour Avec un déclencheur de script surEntreeObjet au lieu d'un bouton. Bonne journée
  21. 2 points
    Donc c'est du formatage de texte que tu veux faire, tout simplement. Pourquoi il faudrait modifier le contenu si c'est juste pour une présentation normalisée ? Un calcul final du style "à partir de " & Cas ( Ent ( Nbre ) = Nbre ; Nbre & ",00" ;Arrondi ( Nbre ; 1 ) & "0" ) & " euros" devrait amplement faire l'affaire. Après reste la question des imports, mais la solution reste semblable, il faut transformer ton nombre en texte... Pour utiliser une fonction perso il te faut une version advanced de FMP.
  22. 2 points
    ericire

    Traduction Fonctions En Anglais

    bonsoir pour ceux que ça intéresse voici un calcul permettant de traduire les fonctions du français à l'anglais (je l'ai mis sur FM customs fonctions) /* Translate_french_functions_to_english (text)by Eric Plassotv.1, Jan 2009For french people who wants to translate their functions in EnglishPour les francophones désirant traduire leur fonctions en AnglaisNOT RECURSIVE*/ Definir( [tradcalc=Definir( [ //mettre en lieu et place de your_field, la rubrique ou le texte à traduire (put your field or your text to transalte here)field_transl = fonction à traduire;//-------------------------------------------------------------$trad=Remplace2( field_transl;"¶";" ¶ "); $list_engl=Remplace2( "Exact##Filter##FilterValues##GetAsCSS##GetAsDate##GetAsNumber##GetAsSVG##GetAsText##GeAsTime##GetAsTimestamp##GetAsURLEncoded##GetValue##Hiragana##KanaHankaku##KanaZenkaku##KaniNumeral##Katakana##Left##LeftValues##LeftWords##Length##Lower##Middle##MiddleValues##MiddeWords##NumToJText##PatternCount##Position##Proper##Quote##Replace##Right##RightValues##RihtWords##RomanHankaku##RomanZenkaku##SerialIncrement##Substitute##Trim##TrimAll##Upper##VaueCount##WordCount##RGB##TextColor##TextColorRemove##TextFont##TextFontRemove##TextFormatRmove##TextSize##TextSizeRemove##TextStyleAdd##TextStyleRemove##Abs##Ceiling##Combination##iv##Exp##Factorial##Floor##Int##Lg##Ln##Log##Mod##Random##Round##SetPrecision##Sign##Sqrt#Truncate##Date##Day##DayName##DayNameJ##DayOfWeek##DayOfYear##LunarDate##Month##MonthName#MonthNameJ##SolarDate##WeekOfYear##WeekOfYearFiscal##Year##YearName##Hour##Minute##Seconds#Time##Timestamp##Average##Count##List##Max##Min##StDev##StDevP##Sum##Variance##VarianceP#GetSummary##Extend##GetRepetition##Last##FV##NPV##PMT##PV##Acos##Asin##Atan##Cos##Degrees#Pi##Radians##Sin##Tan##Case##Choose##Evaluate##EvaluationError##GetAsBoolean##GetField##GeLayoutObjectAttribute##GetNthRecord##If##IsEmpty##IsValid##IsValidExpression##Let##Lookup#LookupNext##Self##Get(AccountName)##Get(ActiveFieldContents)##Get(ActiveFieldName)##Get(ActiveFieldTableName)##Get(ActiveLayoutObjectName)##Get(ActiveModifierKeys)##Get(ActiveRepetitionNumber)##Get(ActiveSelectionSize)##Get(ActiveSelectionStart)##Get(AllowAbortState)##Get(AllowToolbarState)##Get(ApplicationLanguage)##Get(ApplicationVersion)##Get(CalculationRepetitionNumber)##Get(CurrentDate)##Get(CurrentHostTimeStamp)##Get(CurrentTime)##Get(CurrentTimeStamp)##Get(CustomMenuSetName)##DBEngineVersion##Get(DesktopPath)##Get(DocumentsPath)##Get(ErrorCaptureState)##Get(ExtendedPrivileges)##Get(FileMakerPath)##Get(FileName)##Get(FilePath)##Get(FileSize)##Get(FoundCount)##Get(flag)##Get(HighContrastColor)##Get(HighContrastState)##Get(HostApplicationVersion)##Get(HostIPAddress)##Get(HostName)##Get(LastError)##Get(LastMessageChoice)##Get(LastODBCError)##Get(LayoutAccess)##Get(LayoutCount)##Get(LayoutName)##Get(LayoutNumber)##Get(LayoutTableName)##Get(LayoutViewState)##Get(MultiUserState)##Get(NetworkProtocol)##Get(PageNumber)##Get(PortalRowNumber)##Get(PreferencesPath)##Get(PrinterName)##Get(PrivilegeSetName)##Get(RecordAccess)##Get(RecordID)##Get(RecordModificationCount)##Get(RecordNumber)##Get(RecordOpenCount)##Get(RecordOpenState)##Get(RequestCount)##Get(RequestOmitState)##Get(ScreenDepth)##Get(ScreenHeight)##Get(ScreenWidth)##Get(ScriptName)##Get(ScriptParameter)##Get(ScriptResult)##Get(SortState)##Get(StatusAreaState)##Get(SystemDrive)##Get(SystemIPAddress)##Get(SystemLanguage)##Get(SystemNICAddress)##Get(SystemPlatform)##Get(SystemVersion)##Get(TemporaryPath)##Get(TextRulerVisible)##Get(TotalRecordCount)##Get(UserCount)##Get(UserName)##Get(UseSystemFormatsState)##Get(WindowContentHeight)##Get(WindowContentWidth)##Get(WindowDesktopHeight)##Get(WindowDesktopWidth)##Get(WindowHeight)##Get(WindowLeft)##Get(WindowMode)##Get(WindowName)##Get(WindowTop)##Get(WindowVisible)##Get(WindowWidth)##Get(WindowZoomLevel)##DatabaseNames##FieldBounds##FieldComment##FieldIDs##FieldNames##FieldRepetitions##FildStyle##FieldType##GetNextSerialValue##LayoutIDs##LayoutNames##LayoutObjectNames##RelatioInfo##ScriptIDs##ScriptNames##TableIDs##TableNames##ValueListIDs##ValueListItems##ValueLisNames##WindowNames##External##objectType##hasFocus##containsFocus##isFrontTabPanel##bounds#left##right##top##bottom##width##height##rotation##startPoint,endPoint##source##enclosingbject##containedObjects";"##";"¶"); $list_french=Remplace2( "Egal##Filtre##ValeursFiltre##ObtenirCSS##ObtenirDate##ObtenirNombre##ObtenirSVG##ObtenrTexte##ObtenirHeure##ObtenirHorodatage##ObtenirURLCodee##ObtenirValeur##Hiragana##KanaHanaku##KanaZenkaku##ChiffreKanji##Katakana##Debut##ValeursDebut##MotsDebut##Longueur##Minuscle##Extrait##ValeursExtraites##MotsExtraits##NombreVersTexteJ##Occurrences##Position##NomPopre##Citation##Remplace##Fin##ValeursFin##MotsFin##RomanHankaku##RomanZenkaku##IncrementSrie##Remplace2##SupprEspace##SupprimerTout##Majuscule##DecompteValeurs##NombreMots##Rvb##CuleurTexte##SupprimerCouleurTexte##PoliceTexte##SupprimerPoliceTexte##SupprimerFormatTexte#TailleTexte##SupprimerTailleTexte##AjoutStyleTexte##SuppressionStyleTexte##Abs##Plafond##ombinaison##Div##Exp##Factoriel##Plancher##Ent##Lg##Ln##Log##Mod##Alea##Arrondi##Precision#Signe##Racine##Tronque##Date##Jour##NomJour##NomJourJ##JourSemaine##JourAnnee##LunarDate#Mois##NomMois##NomMoisJ##SolarDate##SemaineAnnee##SemaineExercice##Annee##NomAnnee##Heures#Minutes##Secondes##Heure##Horodatage##Moyenne##Nombre##Liste##Max##Min##Ecartech##Ecartpo##Somme##Variance##VarianceP##Recapitulatif##Multivaluee##ObtenirRepetition##Derniere##Vc#Npv##Rembour##Va##Acos##Asin##Atan##Cos##Degres##Pi##Radians##Sin##Tan##Cas##Choisir##Evalation##ErreurEvaluation##ObtenirCommeBooleen##ResultatRubrique##ObtenirAttributObjetModele#ObtenirEniemeEnreg##Si##EstVide##EstCorrect##ExpressionValide##Definir##ReferenceExterne#ReferenceExterneSuivante##Contenu##NomCompte##ContenuRubriqueActive##NomRubriqueActive##NoTableRubriqueActive##NomObjetModèleActif##TouchesSpécialesActives##NuméroRépétitionAcive##TailleSélectionActive##DébutSélectionActive##EtatAutoriserAnnulation##EtatAutoriseBarreOutils##LangueApplication##VersionApplication##NombreRépétitionsCalcul##DateActuell##HorodatageHôteActif##HeureActuelle##HorodatageActuel##NomJeuMenuPersonnalisé##DBEngineersion##CheminBureau##CheminDocuments##EtatGestionErreurs##PrivilègesEtendus##CheminFileMker##NomFichier##CheminFichier##TailleFichier##NombreEnregTrouvés##Obtenir##CouleurContrateElevé##EtatContrasteElevé##VersionApplicationHôte##AdresseIPHôte##NomHôte##DernièrErreur##DernierChoixMessage##DernièreErreurOdbc##AccèsModèle##NombreModèles##NomModèl##NuméroModèle##NomTableModèle##EtatVueModèle##EtatMultiUtilisateur##ProtocoleRéseau#NuméroPage##NuméroRangéeTableExterne##CheminPréférences##NomImprimante##NomPrivilège##AccèsEnreg##IDEnreg##NombreModificationsEnreg##NuméroEnreg##NombreEnregOuverts##EtatEnegOuvert##NombreRequêtes##EtatIgnorerRequête##ProfondeurEcran##HauteurEcran##LargeurEcra##NomScript##ParamètreScript##RésultatScript##EtatTri##EtatZoneEtat##DisqueSystème##AdrsseIPSystème##LangueSystème##AdresseNICSystème##PlateformeSystème##VersionSystème##ChminTemporaire##RégletteTexteVisible##NombreEnregTotal##NombreUtilisateurs##NomUtilisateur#EtatUtiliserFormatsSystème##HauteurContenuFenêtre##LargeurContenuFenêtre##HauteurFenêreBureau##LargeurFenêtreBureau##HauteurFenêtre##FenêtreGauche##ModeFenêtre##NomFenêtr##HautFenêtre##FenêtreVisible##LargeurFenêtre##NiveauZoomFenêtre##NomsBases##TailleRubique##CommentaireRubrique##IDRubrique##NomsRubriques##ValeursRubrique##StyleRubrique##Typeubrique##ResultatValeurSerieSuivante##IDModele##NomsModeles##NomsObjetsModèles##InfosLien#IDScript##NomsScripts##IDTable##NomsTables##IDListeValeurs##ElementsListeValeurs##NomsLisesValeurs##NomsFenêtres##Externe##TypeObjet##PossèdeFocus##ContientFocus##EstPanneauOngltsAvant##limites##gauche##droite##haut##bas##largeur##hauteur##rotation##PointDépart,PoinFin##source##ObjetEnglobant##ObjetsContenus";"##";"¶"); $trad=Definir( tradcalc= Definir( [ $list_signs="=¶≠¶>¶<¶≥¶≤¶+¶-¶*¶/¶&¶\"¶(¶)¶;¶[¶]"; $Sep = "¶"; $End = DecompteValeurs($list_signs); $n = 0; Calc ="Let([val=GetValue($list_signs; let($n=$n+1;$n)); $trad= substitute($trad;val;\" \"&val&\" \") ];\"\")&" ];Cas( $End; Remplace2(Evaluation( Definir( [a = Div($End; 400 ); b= Mod( $End; 400 ) ];Cas( a; Remplace2( 10^a - 1; [ "9"; 10^400 - 1 ]; [ "9"; Calc ] ) ) &Cas( b; Remplace2( 10^b - 1; "9"; Calc ) ) ) & "\"^#|#^\"" ); $Sep & "^#|#^"; "" )) );" "&Remplace2( $trad;" ";" ")&" "); $Sep = "¶"; $End = DecompteValeurs($list_engl); $n = 0; Calc ="Let([$val_engl=\" \"&GetValue($list_engl; let($n=$n+1;$n)&\" \"); $val_french=\" \"&GetValue($list_french; $n)&\" \"; $trad= substitute($trad;$val_french;$val_engl) ];\"\")&" ];Cas( $End; Remplace2(Evaluation( Definir( [a = Div($End; 400 ); b= Mod( $End; 400 ) ];Cas( a; Remplace2( 10^a - 1; [ "9"; 10^400 - 1 ]; [ "9"; Calc ] ) ) &Cas( b; Remplace2( 10^b - 1; "9"; Calc ) ) ) & "\"^#|#^\"" ); $Sep & "^#|#^"; "" )) )];Definir( tradcalc= Definir( [ $list_signs="=¶≠¶>¶<¶≥¶≤¶+¶-¶*¶/¶&¶\"¶(¶)¶;¶[¶]"; $Sep = "¶"; $End = DecompteValeurs($list_signs); $n = 0; Calc ="Let([val=GetValue($list_signs; let($n=$n+1;$n)); $trad= substitute($trad;\" \"&val&\" \";val) ];\"\")&" ];Cas( $End; Remplace2(Evaluation( Definir( [a = Div($End; 400 ); b= Mod( $End; 400 ) ];Cas( a; Remplace2( 10^a - 1; [ "9"; 10^400 - 1 ]; [ "9"; Calc ] ) ) &Cas( b; Remplace2( 10^b - 1; "9"; Calc ) ) ) & "\"^#|#^\"" ); $Sep & "^#|#^"; "" )) );Remplace2( $trad;[" ";" "];[" ¶ ";"¶"])))
  23. 1 point
    Bonjour et Merci David. Ca devrait m'aider effectivement. J'avais un souvenir de "4D" (horreur ;-)) plus évocateur de l'état de l'enregistrementet, du coup, je n'ai pas cherché avec cette syntaxe. Cette fonction est utile dans d'autres situation. C'est parfait Bonne soirée G
  24. 1 point
    Jérémie Gimenez

    RECHERCHE SPECIFIQUE

    Bonjour Arusha, J'aime bien ton modèle TRAJETS ! ? Dans cette situation, une table doit suffire, avec un bon modèle de rapport (type liste avec filtrage et tri bien pensés). (Je vois une table Recherche dans ta structure, qui n'est pas indispensable, je pense.) Dans ton cas précis, la difficulté apparaît pour croiser les critères. Comme tu le fais déjà, on peut croiser le critère jour / nuit avec les critères climat et type de route. Mais, et tu l'as peut-être déjà constaté, dans l'absolu, il faudrait pouvoir enregistrer dans la même journée X kilomètres Jour+Campagne+2voies+Pluie et Y kilomètres Jour+Campagne+cheminDeTerre+Brouillard et Z kilomètres […], etc. Le nombre de combinaison est important et peut être multiplié si tu décides d'ajouter des items (vents violents, entre-chien-et-loup, embouteillage, incident survenu, trois-passagers-bruyants-à-l'arrière, etc.). On peut donc difficilement recourir à des rubriques pour chaque cas de figure. Concrètement, si tu veux gérer tous les possibles, il te faut subdiviser en sous-trajets : - soit en créant une fiche trajet nouvelle à chaque fois qu'un des critères est modifié, - soit en utilisant une table "sous-trajet" reliée à la table trajet. Dans les 2 cas, tu utiliseras une rubrique jour-nuit unique, une rubrique type-de-route unique, une rubrique climat unique et une rubrique kilométrage. Tu pourras sortir des rapports précis assez simplement. Bonne journée ! Jérémie
  25. 1 point
    Tomassia_fm

    Veille et Filemaker 17

    Alors je n'en sais rien mais si ca fonctionne tant mieux
  26. 1 point
    David Julot

    DefaultFields

    Bonsoir, Effectivement le fichier XML n'est pas correctement formé (non valide). XML est sensible à la casse, les deux dernières balises <Field> ne sont pas fermées par </Field> mais par </field>, lignes 100 et 108. Voici donc le fichier corrigé : DefaultFields corrigé.xml DefaultFields corrigé.xml DefaultFields corrigé.xml DefaultFields corrigé.xml DefaultFields corrigé.xml DefaultFields corrigé.xml DefaultFields corrigé.xml
  27. 1 point
    dwikstroem

    ORDEN DE POSICION EN UN LISTADO

    Aùn si deben haber varios usuarios de FMSource que pueden contestarle en el idioma que sea, también hay un foro FileMaker en castellano: http://www.udias.com/foro/index.php.
  28. 1 point
  29. 1 point
    webax

    Data API - Find Records

    Bonjour, J'ai fini par trouver hier : pour les methodes en POST, il faut placer le range et le offset directement dans le corps de la requête et non dans les paramètres URL comme pour le GET. Cela fonctionne. https://fmhelp.filemaker.com/docs/16/fr/restapi/#perform-find-requests comme ceci { "query": [ { "Table::rub1":"xxx", "Table::rub2":"yyy", } ] , "range":"30000"}
  30. 1 point
    fabriceN

    Doublons et lien

    -Pas de confiture aux cochons-
  31. 1 point
    Philippe ROTTIER

    Formatage Date de Naissance

    T'as décroché le gros lot à la FdJ ? Au moins un petit exercice stimulant. Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12 Date naissance.fmp12
  32. 1 point
    Salut la première chose à faire c'est tester si ton scanner fonctionne pour cela ouvres Word et scan un de tes codebar, la tu devrais récupérer le contenu apres dans fm pour la recherche il faut que tu sois bien positionné avec le curseur de saisie dans la rubrique qui contient le codebar , personnellement je créerai une nouvelle rubrique avec un déclencheur de script sur la validation ce qui éviterait de devoir passer en mode recherche
  33. 1 point
    Olivier Devriese

    Conférence 2016?

    La réponse (de normand) est oui et non. A priori et sous réserve de confirmation, ce sera les 19, 20 et 21 octobre 2016. Pour le lieu, ce n'est pas encore décidé, mais on y travaille !
  34. 1 point
    Bonjour Pourquoi pas avec un simple lien ? Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12 Somme mois.fmp12
  35. 1 point
    magicmimi

    Filemaker Et "dsk Sms".

    Bonjour, Toujours dans le soucis de gagner du temps et puisqu'on peut afficher un site internet dans une rubrique fmp je me demandais... J'ai sur "firefox" le module complémentaire "desk sms". Est-il possible de faire en sorte que depuis une rubrique filemaker je puisse utilisé "dsk sms" de façon a pouvoir envoyer mes sms sans quitter fmp et même (pourquoi pas) en automatisant cela. Actuellement je récupère du texte dans sms, je vais sur "firefox", je colle le numéro de tel de la cliente, je colle le texte du sms et j'envoie le sms.... merci par avance de vos réponses.
  36. 1 point
    Bah a priori il y a un seul maire par ville et dans l'exemple je n'ai enregistré que 2 maires. Dans celui ci, une table externe affiche les poste enregistrés dans le répertoire.
  37. 1 point
    J' imagine qu' il n' y a pas de solutions pour ma première question ( sélectionner plusieurs rubriques en un temps ) en mode utilisateur même dans un mode de langage ET ??? Non, par contre, tu peux imaginer de stocker les données des différentes rubriques cliquées dans une variable globale et d'utiliser (et de vidanger) cette variable une fois utilisée dans un script.
  38. 1 point
    Bonsoir, Si je comprends bien, ce n'est pas la table Client qu'il faut nettoyer mais toutes les autres qui pointent vers elle. Je propose, pour chacune d'elles, de : - chercher tous les enregistrements dont la rubrique client est vide, - s'il n'y a pas d'erreur, . supprimer tous les enregistrements trouvés, . sinon, . signaler l'erreur, . fin de si. Bon courage.
  39. 1 point
    Olivier Devriese

    Autodidacte Fm12 Ad&server

    Allez… je suis sympa. Je prends le risque de rendre publique une des questions de la certification 12 (en espérant que Thomas ne lira pas…). Désolé pour la traduction approximative de la version originale en anglais : Supposons le calcul suivant : Moins ( SurClicEnDehorsSelon ; 4 ; Moins ( Not vrai ) ) , Moins() étant une fonction personnalisée, évidemment… Dans les 3 réponses ci-dessous, quelles sont les 2 qui ne sont pas celles qui ne seraient possiblement pas vraies ? A. Oui B. Peut-être C. 27 Réponse : D. ModeVendredi["OuaisJeSaisJSuisEnAvanceMaisBonOnEstLSoir"]
  40. 1 point
    Quatre trous de sécurité, du moins grave au plus grave : Le premier est que ton login/pw circule en clair. En principe, tu devrais utiliser un tunnel SSH pour l'identification (les pages en https://...), mais cette méthode n'est employée que pour les accès sensibles (compte en banque, données médicales, ...). Pour une utilisation normale, pas de soucis. Sur fmsource, par exemple, on n'est pas en https, et c'est très bien. $fm->setProperty('password', $password); Là, je suis gêné car je ne suis pas certain que ça en soit un. Si ton mot de passe est stocké en clair, c'est moyen : si ta base de données est compromise, est-ce qu'on peut avoir accès à l'intégralité des login/pw ? De manière traditionnelle, on ne stocke pas le pw, mais uniquement sa clé MD5 ou SHA1. C'est pour cela que sur la majorité des sites, on ne te propose pas de te redonner ton pw, mais de t'en générer un nouveau. echo "Error: " . $result->getMessage() . "\n"; En production, on n'affiche JAMAIS le msg d'erreur, car cela donne à l'attaquant des informations sur ton système. Tu stockes l'erreur dans un fichier de log et tu affiches uniquement "erreur dans la requete" (plus un lien pour revenir à la page d'accueil). Facile à corriger. $user = $_POST['utilisateur'];$password = $_POST['mot_de_passe']; Là, c'est de loin le plus gros trou. C'est même une franche invitation au piratage. Règle de base : on vérifie TOUJOURS TOUT ce qui rentre. A MINIMA utilise la fonction filter_var ou une de ses soeurs (filter_input, filter_var_array, ...), et de la manière la plus restrictive possible, c'est à dire en disant "voila ce que j'autorise" plutôt que "voila ce que j'interdis". Après, on peut blinder d'avantage par exemple en limitant le nombre d'essais de pw pour un login donné, mais je ne sais pas si c'est adapté au contexte. Yvan
  41. 1 point
    Ah, l'angoisse de la page blanche A première vue, ton foreach me semble tout à fait correct. Par contre, tu définis deux fois le username de FM, mais pas le password. Truc : si tu veux débogguer (du moins dans un premier temps), tu peux utiliser les fonctions print_r et var_dump (je te laisse regarder la différence qu'il y a entre ces deux là) et en truffer ton code, pour voir l'évolution des variables. Astuce : tu peux encadrer ces fonctions avec une balise <pre> pour avoir qque chose de plus lisible. echo '<pre>';print_r($montruc);echo '</pre>'; Yvan
  42. 1 point
    C'est possible. Dans le graphe de liens, dans les options du lien sous la partie de fenêtre "Noms", tu coches "Permettre la création…". Dans ta table EDI, tu places une table externe basée sur le lien EDI<->NOM et maintenant, tu peux créer des enregistrements dans cette table externe (c'est à dire dans la table Nom.
  43. 1 point
    Puimoisson04

    Diaporama Avec Temporisation

    Tu as du changer qqchose à un moment donné avant d'importer le script. les /* et */ inactivent les pas de scripts qui se trouvent entre et se mettent en place automatiquement quand tu importes un script et que les libellés (en général des rubriques) ne sont pas exactement les mêmes dans le fichier d'origine et dans le fichier d'importation.
  44. 1 point
    Les noms sont stockés dans une table externe, avec les pseudos ? Dans ce cas, il faudrait créer un lien entre la table externe et la fiche où doivent apparaître les informations et afficher ainsi le nom et le pseudo de l'artiste en question. Le lien doit se faire sur l'ID de la fiche de l'artiste et l'affichage du nom et du pseudo via le lien
  45. 1 point
    Puimoisson04

    Fichue Parenthèse

    Bonjour, Si tu veux enlever une fois pour toutes les parenthèses, une solution irréversible (donc à faire sur une copie ou une rubrique créée à cet effet, une fausse manip. est vite arrivée). Dans le menu "Edition" -> Rechercher/Remplacer où tu demandes de remplacer successivement la parenthèse ouvrante puis la parenthèse fermante par rien. Si tu veux garder tes parenthèses, mais qu'elles n'apparaissent pas dans ta rubrique calcul de concaténation, la fonction "Filtre".
  46. 1 point
    Clem

    Reduire La Taille Des Fichiers Pdf

    ... en réponse au sujet Poids Des Fichiers Pdf Générés Une solution Mac OS X (10.3.9 à 10.5.xx ) Testé sous OS 10.4.11 Sauvegarde PDF -> environ 1,7 Mo Après réduction -> environ 380 ko Pour rajouter vos propres filtres à la solution et les appliquer à vos sorties pdf, il vous suffit d'ouvrir l'utilitaire"/Applications/Utilities/ColorSync Utility.app" créer un nouveau filtre en utilisant l'onglet/icône "Filtre". une fois le filtre créé, copier son contenu (c'est une plist; donc du XML) avec TextEdit ou BBEdit (ils sont situés ici "/Users/${USER}/Library/Filters/") et coller le presse papier dans la globale "PARAMETRES::qfilter"). Rien ne vous interdit non plus de recréer tous les méchanismes des filtres de ColorSync Utility.app Amusez-vous bien Pour des raisons de taille d'archive (2Mo max), les images sont passées en deux fois. SlimPDF.zip les images seront à placer dans le dossier "images" imgs1.zip imgs2.zip hth SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip SlimPDF.zip imgs1.zip imgs2.zip
  47. 1 point
    lem alpha

    Ouvrir Un Fichier Joint

    Bon, alors si j'ai bien compris et que le but du fichier de Clément est une preview du fichier dans l'appli FMP, voilà ce qu'on peut faire sous win (c'est kif kif, d'ailleurs, je vois pas ce qui empêchait Clem d'inclure ça, d'où mon doute quant à ma compréhension du problème... ) Par contre, pour ce qui est de la preview de docs MS Office, faut peut-être prendre en compte la limitation mise au jour ici . Mais d'ailleurs, est-ce que la demande initiale de Didier n'est pas plutôt d'ouvrir en lançant l'application adhoc ? (ie un pdf dans acrobat reader, etc...) Car dans ce cas, un simple "Exporter contenu rubrique", avec le chemin défini par ex. de la même manière que Clem, et l'option "Ouvrir automatiquement" devrait le faire, non ? Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7 Clem_Show_PDF_stored_in_Binary_Field 2.fp7
  48. 1 point
    lem alpha

    Classement

    Hello, il y a beaucoup de rubriques "difficilement identifiables" (c'est à dire dont le nom ne me parle pas trop...), il faudrait donc me dire sur quoi tu veux effectuer ton classement ? (où est le total des points?) De plus tu as une notion de "nombre de tours", il faut donc aussi nous en dire un peu plus sur la façon dont ceux-ci se combinent pour obtenir le score... En attendant, tu peux peut-être consulter ce tutoriel pour te familiariser avec les notions de base (et moins "de base" par la suite...)
  49. 1 point
    fabriceN

    Enregistrements Fantômes

    C'est un problème éternel, qu'il est apparemment difficile de régler chez FMI... Récupérer règle le problème, mais bon...
  50. 1 point
    Merci pour le site web, j'ai commencé à le consulter. Néanmoins, nous allons peut-être continuer la même formule d'une fiche par hospitalisation. Si le patient viens 2 fois on fait 2 fiches. Ce qui nous intéresse ce n'est pas le nom ou le numéro de dossier, mais ce qui se produit à nos patient durant leur hospitalisation. Par contre, auriez-vous une petite idée pourquoi les informations des tables exernes réapparaissent automatiquement si j'ai 2 fois le même nom et numéro de dossier ? J'aimerais vraiement me débarasser de cette fonction si cela est possible. Je continue à faire des lectures sur les liens et les tables externes pendant ce temps. Merci pour votre aide Sabrina
×
×
  • Create New...