Umieścić wiele warunków w SMARTPROPERTIES?

Witam, zwracam się z prośbą o drobną pomoc w realizacji nieruchomości na Smart properties:
Musiałbym utworzyć właściwość z warunkiem w odniesieniu do materiałów do wypełnienia pola, więc na przykład, jeśli XC48 umieścić 125695 itp.
Problem polega na tym, że mam dużo różnych materiałów i na razie znajduję się z tym kodem, ale problem polega na tym, że nie działa:

IFF($Matiere=XC48;$Matiere=STUB;$Matiere=WYŻARZANIE GRUNTU STUB h7 ⌀30;$Matiere=90MCVW 5 Z160CDV12;$Matiere=Z130 CWD V6.5.4.2;$Matiere=80MO8;$Matiere=HASBERG;$Matiere=45NCD16;$Matiere=40CMD8+s;$Matiere=Z38DCV5;$Matiere=60WC20;$Matiere=WĘGLIK H40S;$Matiere=35CD4;$Matiere=FERROTIC|7326909890|
IFF($Matiere=AU4G;$Matiere=AG3;$Matiere=FORTAL HR;$Matiere=PLANCAPLUS 5083|7616999099|
IFF($Matiere=POM-C;$Matiere=POLIWĘGLAN;$Matiere=ACCURA 25;$Matiere=IMP.3D DRUT ABS (CZERWONY);$Matiere=IMP.3D DRUT ABS (NIEBIESKI);$Matiere=IMP.3D DRUT ABS (BIAŁY);$Matiere=IMP.3D DRUT ABS ();$Matiere=IMP.3D DRUT ABS (ZIELONY);$Matiere=PODGLĄDAĆ;$Matiere=ELADIP CZERWONY;$Matiere=ELADIP POMARAŃCZOWY;$Matiere=ELADIP NIEBIESKI|3926909790|
IFF($Matiere=STAL KONSTRUKCYJNA;$Matiere=PROFIL BOSCH; $Matiere=ETIRE|7301200000|_)
)
)
)

Aby gromadzić iffy w inteligentnych właściwościach, musisz napisać regułę dla tematu, a następnie wstawić tę samą regułę w niespełnionym warunku.
Przykład funkcjonalny:
IFF($Rayon=1,3|8|IFF($Rayon=2|12|IFF($Rayon=2.6|16|IFF($Rayon=4|25|IFF($Rayon=5|35|IFF($Rayon=8|50|IFF($Rayon=10|63|błąd))
Z kodem koloru, aby lepiej zrozumieć:
image
A jeśli to konieczne, łączysz warunki jeden po drugim, sprawdzając funkcjonalność między 2 dodatkami. (Kopiujesz początkową regułę dla 1 tematu i wklejasz ją zamiast err dla tego przypadku, dla każdego dodania).

Nie jest to zbyt łatwe do skonfigurowania, jeśli masz dużo warunków, ale w końcu działa to dobrze później.

1 polubienie

Jeśli dobrze zrozumiałem intencję:

Rodzina → 7326909890 Steel
→ 7616999099 aluminium
→ 3926909790 tworzyw sztucznych
→ profile 7301200000

Powinno to być:

IFF($Matiere=XC48|7326909890|
 IFF($Matiere=STUB|7326909890|
 IFF($Matiere=STUB RECTIFIE RECUIT h7 ⌀30|7326909890|
 IFF($Matiere=90MCVW 5 Z160CDV12|7326909890|
 IFF($Matiere=Z130 CWD V6.5.4.2|7326909890|
 IFF($Matiere=80MO8|7326909890|
 IFF($Matiere=HASBERG|7326909890|
 IFF($Matiere=45NCD16|7326909890|
 IFF($Matiere=40CMD8+s|7326909890|
 IFF($Matiere=Z38DCV5|7326909890|
 IFF($Matiere=60WC20|7326909890|
 IFF($Matiere=CARBURE H40S|7326909890|
 IFF($Matiere=35CD4|7326909890|
 IFF($Matiere=FERROTIC|7326909890|
 IFF($Matiere=AU4G|7616999099|
 IFF($Matiere=AG3|7616999099|
 IFF($Matiere=FORTAL HR|7616999099|
 IFF($Matiere=PLANCAPLUS 5083|7616999099|
 IFF($Matiere=POM-C|3926909790|
 IFF($Matiere=POLYCARBONATE|3926909790|
 IFF($Matiere=ACCURA 25|3926909790|
 IFF($Matiere=IMP.3D FIL ABS (ROUGE)|3926909790|
 IFF($Matiere=IMP.3D FIL ABS (BLEU)|3926909790|
 IFF($Matiere=IMP.3D FIL ABS (BLANC)|3926909790|
 IFF($Matiere=IMP.3D FIL ABS (NOIR)|3926909790|
 IFF($Matiere=IMP.3D FIL ABS (VERT)|3926909790|
 IFF($Matiere=PEEK|3926909790|
 IFF($Matiere=ELADIP ROUGE|3926909790|
 IFF($Matiere=ELADIP ORANGE|3926909790|
 IFF($Matiere=ELADIP BLEU|3926909790|
 IFF($Matiere=ACIER DE CONSTUCTION|7301200000|
 IFF($Matiere=PROFIL BOSCH|7301200000|
 IFF($Matiere=ETIRE|7301200000|
"")))))))))))))))))))))))))))))))))))))))))))))))))))

Ale @sbadenis sensie myślę, że mądrze byłoby rozdzielić twoje warunki, dodając warunek wstępny, aby najpierw określić 4 rodziny materiałów:

IFF($Matiere=XC48|ACIERS|
 IFF($Matiere=STUB|ACIERS|
 IFF($Matiere=STUB RECTIFIE RECUIT h7 ⌀30|ACIERS|
 IFF($Matiere=90MCVW 5 Z160CDV12|ACIERS|
 IFF($Matiere=Z130 CWD V6.5.4.2|ACIERS|
 IFF($Matiere=80MO8|ACIERS|
 IFF($Matiere=HASBERG|ACIERS|
 IFF($Matiere=45NCD16|ACIERS|
 IFF($Matiere=40CMD8+s|ACIERS|
 IFF($Matiere=Z38DCV5|ACIERS|
 IFF($Matiere=60WC20|ACIERS|
 IFF($Matiere=CARBURE H40S|ACIERS|
 IFF($Matiere=35CD4|ACIERS|
 IFF($Matiere=FERROTIC|ACIERS|
 IFF($Matiere=AU4G|ALUMINIUM|
 IFF($Matiere=AG3|ALUMINIUM|
 IFF($Matiere=FORTAL HR|ALUMINIUM|
 IFF($Matiere=PLANCAPLUS 5083|ALUMINIUM|
 IFF($Matiere=POM-C|PLASTIQUES|
 IFF($Matiere=POLYCARBONATE|PLASTIQUES|
 IFF($Matiere=ACCURA 25|PLASTIQUES|
 IFF($Matiere=IMP.3D FIL ABS (ROUGE)|PLASTIQUES|
 IFF($Matiere=IMP.3D FIL ABS (BLEU)|PLASTIQUES|
 IFF($Matiere=IMP.3D FIL ABS (BLANC)|PLASTIQUES|
 IFF($Matiere=IMP.3D FIL ABS (NOIR)|PLASTIQUES|
 IFF($Matiere=IMP.3D FIL ABS (VERT)|PLASTIQUES|
 IFF($Matiere=PEEK|PLASTIQUES|
 IFF($Matiere=ELADIP ROUGE|PLASTIQUES|
 IFF($Matiere=ELADIP ORANGE|PLASTIQUES|
 IFF($Matiere=ELADIP BLEU|PLASTIQUES|
 IFF($Matiere=ACIER DE CONSTUCTION|CONSTRUCTION|
 IFF($Matiere=PROFIL BOSCH|CONSTRUCTION|
 IFF($Matiere=ETIRE|CONSTRUCTION|
 ""))))))))))))))))))))))))))))))))))))))))))))))

i drugi warunek, aby przypisać im 10-cyfrowy kod.
Myślę, że będzie to łatwiejsze do zarządzania, jeśli będziesz musiał dodać materiały...

IFF($Famille=ACIERS|7326909890|
 IFF($Famille=ALUMINIUM|7616999099|
 IFF($Famille=PLASTIQUES|3926909790|
 IFF($Famille=CONSTRUCTION|7301200000|
 "")))

=>Bądź ostrożny, nie byłem w stanie przetestować powyższych warunków. Ostrożność.

Porada: Napisz formuły w arkuszu kalkulacyjnym Excel przed przeniesieniem ich do Smartproperties, w ten sposób jest to prostsze i łatwiejsze do zmodyfikowania w przyszłości.

… Kopiąc trochę głębiej, natknąłem się na zakładkę " Niestandardowe " w edytorze materiałów i zastanawiam się, czy nie jest możliwe utworzenie nowej właściwości z 10-cyfrowym kodem bezpośrednio powiązanym z materiałem...

=> A dla profili, preferowane jest zintegrowanie właściwości bezpośrednio z plikiem *. SLDLFP (Protokół SLDLFP)

1 polubienie

Nie z; @Maclane
Nie jest łatwo wytłumaczyć, więc przykład z warunkiem 1, 2, 3.
FRFI ($Condition=A|$R Wynik=1|$R Wynik=Inny)
FRFI ($Condition=A|$R wynik=1|FRFI ($Condition=B|$R wynik=1|$R wynik=Inny))
FRFI ($Condition=A|$R wynik=1|FRFI ($Condition=B|$R wynik=1|IFF
($Condition=A|$R wynik=1|$R wynik=Inny))
Zasadniczo zaczynasz od 1. linii, którą testujesz.
Następnie kopiujesz go i wklejasz za każdym razem zamiast $R result=Other
I zmieniasz wartość swojego warunku i wynik (prawda)

Nie wiem, czy przyjazne, ale tak to działa!
A nawet w arkuszu kalkulacyjnym nadal jest to kłopotliwe... :face_with_symbols_over_mouth:

I powodzenia, zabiłem się przy zadaniu zbadania 15-20 warunków w innym przykładzie! :crazy_face:

2 polubienia

Okej, właśnie zrozumiałem, zrobiłem to ponownie, biorąc pod uwagę twoje rady i działa idealnie, bardzo dziękuję!

1 polubienie

… Zajęło mi trochę czasu, aby zinterpretować to zdanie :laughing:

Przepisałem wszystkie warunki tak, jak je rozumiem w mojej poprzedniej wiadomości.
Uwaga: podziały wierszy i puste wiersze istnieją tylko dla zrozumienia...

A przyglądając się bliżej, wygląda to coraz bardziej jak XML... Czy się mylę?
Nie wydaje mi się, aby Smartproperties mógł używać tego typu pliku (XML), ale jest to " łatwo " wykonalne z makra i uruchamiane z Smartproperties i pozwala to na stworzenie dokumentu, który jest łatwiejszy do odczytania niż 20-25 warunków zagnieżdżonych.

2 polubienia

Tak, lepiej to napisać w ten sposób dla linii, którą dobrze zrozumiałem, @Maclane ! :rofl:
W przypadku Xml jest to całkiem możliwe, ale jedyną możliwością w trybie warunkowym za pomocą smartproperties jest napisanie go tak, jak wyjaśniłem (brak pliku xml) lub za pomocą makra, ale staje się to skomplikowane dla osób niezwiązanych z vba.

Zamknij temat, jeśli Twoja sprawa jest dobrze rozwiązana.

2 polubienia